别人用jax-ws发布的webservice,我尝试了用axis调用webservice即wsdl可以。下面尝试另一种方式调用,用jax-ws方式去调用
来源:互联网 发布:linux线程相关系统调用 编辑:程序博客网 时间:2024/05/23 20:12
别人用jax-ws发布的webservice,我尝试了用axis调用webservice即wsdl可以。下面尝试另一种方式调用,用jax-ws方式去调用
jax-ws什么意思?
jax是什么?
ws是什么,即webservice。
方法如下:
http://www.cnblogs.com/HigginCui/p/5833415.htmlJDK提供了一个wsimport.exe的命令,主要是用于将WebService生成客户端代码,然后好调用WebService。 wsimport 是根据JDK1.6.0_21及以上的生成本地代码的,它只能解析服务器端的SOAP协议为1.1,不能解析SOAP1.2的协议。如果解析SOAP1.2 将会解析
如果遇到 'wsimport' 不是内部或外部命令,也不是可运行的程序,则么办?
但是还是会报错:
wsimport "不支持使用 SOAP 编码。
原因是:
http://blog.csdn.net/u010668910/article/details/50955937#comments
解决方式是:用Eclipse自动生成客户端代码,不用wsimport。
生成完毕之后,客户端代码怎么写?
使用Eclipse方式和wsimport两种方式,生成的客户端代码的.java文件是不一样的,因此客户端调用也不一样。
1)wsimport生成客户端代码方式,客户端调用代码:
网上的客户端调用代码:
我亲自测试成功的代码:
2)Eclipse生成的客户端代码方式,客户端调用代码:
用Eclipse生成的客户端代码,你回发现,没有一个形如"WeatherInterfaceImpl"即以Impl结尾的.java文件,为什么?
通过Eclipse自动产生的Code中, 有一个Java 文件以Proxy结尾, 这个就是调用的Class了。
为什么是Proxy结尾的?
原因是,Eclipse方式生成的客户端代码,是使用的java代理(即Java Proxy,Proxy就是代理的意思):
所以其客户端调用代码如下:
总结:
使用jax-ws方式的客户端,去调用别人的接口。不需要任何其他的技术,有jdk就行。
1)用Eclipse生成客户端代码(前提是发布wsdl工程要保持运行才能自动生成代码即java类,即http://...?wsdl要可以访问)。
2)在自己的方法中,调用客户端的类,即可。
----------特此说明:
用Eclipse生成jax-ws方法,生成客户端java代码,这种方式,不靠谱。Eclipse生成代码时报错,生成不了代码。但是命令行方式,却可以。
我就遇到过一次:
Eclipse报错:
但是使用jdk的wsimport.exe这个工具就可以生成客户端代码:
使用方法:
打开cmd,进入到wsimport.exe所在的位置,执行如下命令:
wsimport -keep XX?wsdl -d src
wsimport -d ./bin -s ./src XX?wsdl
注意:
①上面两个命令中的src、bin目录需要在bin目录下新建,命名可以任意,否则会报错“directory not found: .\bin”、“directory not found: src”等目录不存在的问题。
②wsimport -d ./bin -s ./src XX?wsdl ,bin目录下存在的是.class文件,src下存的是.java文件
0 0
- 别人用jax-ws发布的webservice,我尝试了用axis调用webservice即wsdl可以。下面尝试另一种方式调用,用jax-ws方式去调用
- java调用Myeclipse通过jax-ws方式搭建的webservice
- 基于Java的webservice创建与jax-ws方式调用
- MyEclipse6.5 用jax-ws调用webservice(1)
- webservice服务端发布与调用 JAX-WS cxf axis2
- 用JAX-WS开发webservice
- java调用 Myeclipse用jax-ws创建的webservice具体方法(一)
- java调用 Myeclipse用jax-ws创建的webservice具体方法(二)
- java调用 Myeclipse用jax-ws创建的webservice具体方法(三)
- Webservice学习--JAX-WS发布Webservice和调用出现的问题
- Jax WS发布webservice
- JAX-WS WebService发布
- 使用JAX-WS调用WebService的短信接口
- 基于JAX-WS用wsdl生成webservice服务端代码
- 用JAX-WS实现java调用webServic
- JAX-WS Spring集成jax方式的webservice
- 用Maven生成JAX-WS调用stub代码(用于访问WebService)
- axis,jax-ws,xfire客户端调用
- PHP判断mysql中的数据表是否存在
- Spring Boot单元测试
- c++实验3-项目4
- vue2.0之axios使用详解(一)
- scatter file 文件编写
- 别人用jax-ws发布的webservice,我尝试了用axis调用webservice即wsdl可以。下面尝试另一种方式调用,用jax-ws方式去调用
- MAC OS下错误提示xcrun: error: invalid active developer path
- xml 与bean 转换 java
- 设置沉浸式状态栏
- Better Performance at Lower Occupancy(二)使用更少线程隐藏内存访问延迟
- tomcat8 + nginx + memcached + cas 实现负载均衡的配置
- php文件删除,unlink()
- centos + nginx + mysql + php 环境编译安装
- spring事物