一、使用工具WSDL2java把接口转为本地可调用的.java文件
工具的目录结构:
设置WSDL2Java(URL).bat中的参数
set Axis_Lib=.\lib set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib% set Output_Path=.\source set Package= sms %Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o%Output_Path% -p%Package% http://123.123.123.123:8080/XXXService/Services?wsdl
set Output_Path=.\source //目标java输出的路径
set Package= sms //包含java源文件的目录名
http://123.123.123.123:8080/XXXService/Services?wsdl //webservice所在的地址,一般是外网,因此运行工具时必须网络畅通。
设置好参数后,在网络畅通的环境下字节运行WSDL2Java(URL).bat脚本,然后会得到4个java文件如下图,不同的webservice名字可能不太一样。四个文件大概内容: ①一个文件是定义api的接口文件 ②连接信息的文件,文件通常用Locator结尾。 ③封装实现接口的文件,文件通常Stub结尾,也是我们要实例化的类所在的文件。 ④其他相关文件 一般的使用方法:①把4个相关的文件导入到java工程中。②导入相关jar包③在main函数或其他地方调用微波service
public class TestWebservice { public static void main(String[] args)throws Exception{ try{ String xml = "<DataXml>\n"; PerForwardInfoImplServiceLocator locator = new PerForwardInfoImplServiceLocator(); //获取连接对象 java.net.URL url = new java.net.URL(locator.getPerForwardInfoImplPortAddress()); //获取webservice地址 PerForwardInfoImplServiceSoapBindingStub pss = new PerForwardInfoImplServiceSoapBindingStub(url,locator); //实例化对象 pss.productMemberImmediateTest(xml); //调用websrvice方法 System.out.println(xml); }catch (Exception e){ e.printStackTrace(); } } }
注意:这里并没有完全说明原理,只是简单的使用。相关软件的所有权归作者所有。
wsdl2java和工程中需使用的jar包:
http://download.csdn.net/detail/zhangaocommit/9093091
时间: 2024-11-09 06:14:21