java实现WebService的客户端SOAP方式访问

今天需要用到与其他系统对接接口,提供的是webservice的接口,写了一个客户端,特记录一下。

1.引入需要的jar包



    org.apache.axis
    axis
    1.4



    org.apache.axis
    axis-jaxrpc
    1.4



    commons-discovery
    commons-discovery
    0.5



    wsdl4j.wso2
    wsdl4j
    1.6.2.wso2v4

2.java客户端实现

        final String Url = "http://ip:port/WebService.asmx";
final String namespace = "http://xxx.org/";
final String method = "xxx";
final String paraName = "xxx";
final String paraValue = "xxx";
public void doService() {
try {
Service service = new Service(); 
Call call = (Call) service.createCall();
//访问路径
call.setTargetEndpointAddress(Url);
//访问的方法名称
call.setOperationName(new QName(namespace,method));
//访问参数
call.addParameter(new QName(namespace,paraName), XMLType.XSD_STRING, ParameterMode.IN);
//使用SOAP方式请求
call.setUseSOAPAction(true);
//设置请求的路径
call.setSOAPActionURI(namespace + method); 
//设置返回结果类型
call.setReturnType(XMLType.XSD_STRING);
//开始执行,并获取结果
Object obj = call.invoke(new Object[] {paraValue});
} catch (Exception e) {
e.printStackTrace();
}
}

你可能感兴趣的:(java实现WebService的客户端SOAP方式访问)