针对WebService使用Service类获取Port类的一个参数问题(java.net.MalformedURLException)
2013-03-26 15:18
351 查看
最后在学习WebService时,看到对于官方的例子是这样写的.
注意看上面的PORT_NAME的定义,是一个QName,其就有namespaceURI和一个name值,而在使用serivce获取port时直接传递了接口名参数。
这样的例子是可以运行的,这就导致了本人在编写参考例子时,直接Copy了相应的代码,但是修改了各项名称,在运行时,即始终运行不起来,相应的错误为
以上的错误直接让人找不到方向,而实际问题是,service根据所传递的信息,在只传递了接口信息时,会默认构建一个QName的信息,再从service中寻找,如果寻找不到,自然就会产生上面的错误了。
在官方的例子中,它会默认构建HelloWorldPort这样qname去寻找,而在进行service.add时,恰好添加的就是HelloWorldPort这个qname,那么就恰好寻找到了。
而我们的例子,由于做了很多处理,导致默认添加到service的port的name并不是Service.class.getName+Port的组合,那么自然就找不到相应的port了。而正确的做法,其实也很简单,就是在获取port的时候,手动地指定要获取port类的qname,如下所示:
即在往service时添加什么样的port,那么在获取时就使用什么样的qname。再一步理解,addPort这个方法就可以理解为以键值对的方式往service里追加port,那么在获取的时候自然就要提供相应的key值了。如果不提供,就会使用默认的生成策略创建一个key值,那这个key值与addPort使用的key值不一样的话,自然就会产生上面的错误了。
这样的例子是可以运行的,这就导致了本人在编写参考例子时,直接Copy了相应的代码,但是修改了各项名称,在运行时,即始终运行不起来,相应的错误为
在官方的例子中,它会默认构建HelloWorldPort这样qname去寻找,而在进行service.add时,恰好添加的就是HelloWorldPort这个qname,那么就恰好寻找到了。
而我们的例子,由于做了很多处理,导致默认添加到service的port的name并不是Service.class.getName+Port的组合,那么自然就找不到相应的port了。而正确的做法,其实也很简单,就是在获取port的时候,手动地指定要获取port类的qname,如下所示:
相关文章推荐
- 针对 WebService 使用 Service 类获取 Port 类的一个参数问题的解释
- 针对WebService使用Service类获取Port类的一个参数问题解释
- 【工作记录0022】C#(.NET)调用Java开发的WebService(wsdl),客户端传递非string类型参数(int,double,bool等),而服务端无法获取到参数值的解决方案
- 关于在java环境下调用 .net的 webservice无法获取参数的问题
- 参数读取一个关于java.net.Socket的超时的问题
- ajax使用post提交参数java后台获取值为null但是get却可以获取的问题
- 使用叶神模拟器无法访问本机服务器的问题(报错:java.net.ConnectException: failed to connect to /127.0.0.1 (port 5000) )
- Java使用Axis2调用NET编写的WCFService问题
- 用C#.NET调用Java开发的WebService传递int,double问题,出现java无法获 3ff0
- java后台服务器向手机端返回Json, 使用 "net.sf.json.JSONObject" 解析出现的异常问题
- java调用。net的webservice的时候 参数穿不过去
- 使用uploadify3.2.1 formData传递其他参数到后台,JAVA后台获取参数方法
- ASP.NET使用Request获取来源网址URL参数
- 项目中一个普通的Java类如何获取serviceimpl实现类(二)
- Java使用SOAP获取webservice实例解析
- Java -D命令对应的代码中获取-D后面的参数 和 多个参数时-D命令的使用
- asp.net中回发或回调参数无效。在配置中使用 <pages enableEventValidation="... 问题解决
- 关于ASP.NET 中使用Ajax进行异步调用问题,前台参数无法跳转到后台,提示500 internal server error
- java使用Websocket获取HttpSession出现的问题与解决
- Java使用SOAP获取webservice实例解析