Java 中调用 webservice 的方法

用 wsdl 文件生成java文件

cmd:

wsimport -s generated -p com.bd.hh http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl

  这样会在 当前目录的 generated 目录下生成java文件,generated 目录需要提前建好。

wsimport 是java提供的工具,在jdk目录里有,添加JAVA_HOME环境变量后 可以直接使用。

参考:WebService 根据 wsdl 文件生成 Java 代理类方式汇总_wsdl文件生成java代码方式-CSDN博客

 

 解析组件 's:schema' 时出错

1、生成时报错如下,执行失败,出现的原因是 webService 服务端如果是 .net 写的,则使用 Java wsimport.exe 生成时就会报错。

2、开发中如果没有遇到这个错误,自然是最好,万一遇到,则可以一试,亲测有效。

解决办法

1、针对 .net 开发的 webService 服务端,Java wsimport.exe 生成代理类出错解决办法如下:

1) 将服务端的 wsdl 文档保存到本地,如 E:\wmx\webservice\weather.wsdl.xml、E:\wmx\webservice\weather.wsdl、E:\wmx\webservice\weather.xml (经实测文件的后缀名其实关系不大,都可以正常生成)

2) 修改 wsdl 文档以下内容:
将文件中所有的 <s:element ref="s:schema" /><s:any /> 替换成 <s:any minOccurs="2" maxOccurs="2"/>

 

 

直接使用 Http 请求

参考:

Java调用WebService方法总结(9,end)--Http方式调用WebService - 且行且码 - 博客园 (cnblogs.com)

posted @ 2024-06-26 16:09  htj10  阅读(20)  评论(0编辑  收藏  举报
TOP