标签:其他 ini ice 解决方法 博客 不用 sdn 1.3 完成
由于甲方的服务器并不在外网,编码环境是不能直接访问对方的webservice接口的,所以需要把wsdl文件下载到本地,在通过工具生成代理类。
用java的JDK自带命令wsimport -s . xxx.wsdl生成代理类
wsimport命令可以指定包名以及生成jar包等,具体命令用法百度
但是这次执行命令不成功,报错:Use of SOAP Encoding is not supported
百度了一下,说是wsimport不支持use="encoded",是比较旧的格式,需要用到axis这个框架
有一篇博客有解决方法:根据wsdl生成客户端:Use of SOAP Encoding is not supported
不过我直接用eclipse根据wsdl自动生成客户端代理类了,就不用自己一个一个导入jar包再调用命令。
具体步骤如下:
1.首先创建一个java工程,并把wsdl文件复制进入
2.工程右键,创建一个web service client
3.选择wsdl文件,点击finish即可
4.完成
由于我使用的是Intellij IDEA开发项目,所以还需要把代理类拷贝过去,以及配置maven导入axis的相关jar包
- mail-1.4.jar
- saaj-api-1.3.jar
- jaxrpc-1.1.jar
- commons-discovery-0.2.jar
- commons-logging-1.1.jar
- axis-1.4.jar
- activation-1.1.jar
- wsdl4j-1.4.jar
这里列出一些配置,其他的去maven repository搜索,然后复制粘贴过来就行了
服务端发布是用CXF框架的,刚用TinyMCE写博客不太习惯,下一篇再说服务端吧
关于Axis和CXF框架区别,引用其他人的博客:WebService流行框架之Axis和CXF
标签:其他 ini ice 解决方法 博客 不用 sdn 1.3 完成
原文地址:http://www.cnblogs.com/demojie/p/java_webservice.html