第二次实习--java客户端调用webservice(二)

2014-11-24 09:22:00 · 作者: · 浏览: 2
primeton.com/WSProcessInstManagerService" +method); // 设置调用的命名空间加方法

options.setTo(targetAirline);

options.setTransportInProtocol(Constants.TRANSPORT_HTTP); // 设置传输协议

return options;


这部分主要是设置调用的webservice地址,这一步和上面那种方法的前三句代码是一个作用,都是把调用的webservice的url设置好。
第三步:
[java]
try {

ServiceClientsender = new ServiceClient();

sender.setOptions(buildOptions(method));

OMElementresult = sender.sendReceive(buildParam(params,

paramValues,method));

System.out.println("解析之前的数据:" +result.toString());

returnresult.toString();

} catch(Exception e) {

e.printStackTrace();

System.out.println("调用出错!");

return"调用出错!";

}


这一步主要是完成相关方法的调用,将我们之前设置好的要发送的xml信息发送给我们的webservice,webservice通过解析我们的xml请求,执行相应的方法,返回相应的信息,这个信息是以xml的形式返回出来的。
最后一步:
[java]
try {

Documentdoc = DocumentHelper.parseText(getResultByCode(params,

paramValues,method));

Elementroot = doc.getRootElement();

Elementrn = root.element("s"); // 节点名

System.out.println(rn.getData());

return (String)rn.getData();

} catch(DocumentException e) {

// TODOAuto-generated catch block

e.printStackTrace();

System.out.println("解析出错!");

return"解析出错!";

}


这一步就是我们通过dom4j来解析我们所需要的数据了。这个就不详细介绍了。

到这一步之后我们就通过java成功调用了webservice。其实不是非常困难,主要还是原理上明白怎么个处理流程。

希望通过这两篇博客的整理,大家能够会使用axis2创建webservice和利用axis2调用webservice!