首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

NO Code直接依据Wsdl生成SOAP报文,发送http请求调用web service

2012-08-26 
NO Code直接根据Wsdl生成SOAP报文,发送http请求调用web service作为客户端调用web service通用的做法,通常

NO Code直接根据Wsdl生成SOAP报文,发送http请求调用web service
    作为客户端调用web service通用的做法,通常利用axis或cxf生成客户端代码,如果调用的服少还能应付,如果调用服务比较多,生成的代码很多,很难管理,自己以前就是这样干。 想到过wsdl解析生成soap报文,再通过httpclient发送请求,由于各种服务类型和服务样式,兼容性很难处理,没有去实施。
    最近接触soapui和camel时间比较多,从这两个工具中找到我想要的代码和思路。能够解决各种服务类型和服务样式兼容性问题......  直接通过一个实例来演示怎么调用,效果更比较清楚些。

实例描述:创建一个用户,返回值和参数都市javabean User.(其它参数类型如此)

解析的SOAP报文如下:


需要的参数为:


调用返回一个map
        public static void main(String[] args) throws Exception {String wsdlUrl = "http://localhost:9000/helloWorld?wsdl";SoapClient client = new SoapClient();Map<String, Object> params = new HashMap<String, Object>();params.put("createUser.arg0.address", "Anhui Hefei");params.put("createUser.arg0.name", "melin");params.put("dumpSOAP", "");Map<String, String> result = client.sendRequest("createUser", params, wsdlUrl);System.out.println(result);}


整个测试工程:https://j2eedev.googlecode.com/svn/trunk/SOAPUtil 1 楼 lianshisheng 2011-11-05   正是我要的,哥哥,你真是我的救星啊,我先试试你的工程 2 楼 sodarfish 2011-12-02   嘿嘿,挺好

也可以用xslt做转换呀

热点排行