`

用WSDLtoJAVA生成webservice客户端代码

阅读更多

最近有遇到开发webservice接口的问题,以前常方式是用axis1.4开发

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
 
	       String endpoint = "http://xx.xx.xx.xx:7777/services/xx?wsdl";//指明服务所在位置
	       Service service = new Service(); //创建一个Service实例,注意是必须的!
	       Call     call    = (Call) service.createCall();//创建Call实例,也是必须的!
	       call.setTargetEndpointAddress(endpoint);
	       call.setOperationName(method);
	       String rs = (String)call.invoke(para);//返回String,没有传入参数

 最近遇到部分要求用soap方式做的,整理了一下:

首先配置环境变量

执行如下bat文件

set Axis_Lib=D:\workspace\xx\WEB-INF\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Package=com.test
set Output_Path=.
@%Java_Cmd% org.apache.axis.wsdl.WSDL2Java ddd.wsdl -o%Output_Path% -p%Package% -t

%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -help
pause

 则在当前目录生成对应 ddd.wsdl文件的代码, 将代码复制进项目工程调用即可,调用方式如下:

		URL url =new URL("http://xxx.service.com.cn/xxService.asmx");
//	        如果需要配置代理	
//              AxisProperties.setProperty("http.proxyHost", "xxx.xxx.xxx.xxx"); 
//		AxisProperties.setProperty("http.proxyPort", "40000");
		ServiceLocator rl = new com.xxServices.ServiceLocator();
		ServiceSoap rs = rl.getServiceSoap(url);
		
		String strXML= "XML 参数";
		String result = rs.getReceive(strXML);

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics