WebServivce對接過程

一、做WebService對接一般需要對方提供webservice服務的HTTP地址、WSDL文件、開發說明文檔。

一般WSDL文檔可以通過HTTP地址獲取eg:

若webservice的HTTP地址:http://10.7.3.43/webserverfengh/Service1.asmx

則wsdl文件地址爲:http://10.7.3.43/webserverfengh/Service1.asmx?wsdl

另存爲即可下載此wsdl文檔

二、CXF對接webservice

1、下載apache-cxf文件(最好是2.1.3以上的,此版本前後jar文件有較大區別),將其中lib下的jar包導入項目的lib文件中。

2、http://static.oschina.net/uploads/space/2012/0406/005536_rxYD_184760.png通過此命令在cxf-bin中生成需要的java文件,導入項目中。

3、在項目中根據說明文檔調用接口

@1、JAX-WS(JaxWsServerFactoryBean)方式實現

JAX-WS實現客戶端:

String searchJson="{\"dateTypeFlg\": 0, \"startDateAll\":\""+beginTime+"\", \"endDateAll\":\""+endTime+"\", \"startDate\": \"\", \"endDate\": \"\", \"startTime\": \"\", \"endTime\": \"\", \"carNum\": \""+carNumber+"\", \"screenPlaceId\": \"\", \"highQueryFlg\":0, \"carType\":1, \"carNumColor\": \"1\", \"carColor\":\"1\", \"carSpeedStart\": \"1\", \"carSpeedEnd\": \"99\", \"vagueFlg\":\"1\", \"removeFlg\":\"0\", \"hasSpecialCarQueryPrivilege\":true, \"userBean\":{\"loginServerName\":\"127.0.0.1\"}}";


String pageJson="{\"pageNo\":0, \"pageSize\":10000, \"orderBy\":\"cap_date\", \"order\":\"asc\", \"autoCount\": true}";


        JaxWsProxyFactoryBean factory=new JaxWsProxyFactoryBean();
        factory.getInInterceptors().add(new LoggingInInterceptor());
        factory.getOutInterceptors().add(new LoggingOutInterceptor());
        factory.setAddress("http://10.38.217.21/itc/ws/carQuery");
        factory.setServiceClass(CarQueryService.class);
        CarQueryService client=(CarQueryService)factory.create();
        System.out.println("/////////////");
        String str=client.getCommonQuery(searchJson,pageJson,"");
        System.out.println(str);//在控制檯檢查對接結果

其中:


@2、POJO(ServiceFactoryBean)方式實現

@3、通過spring的配置文件集成,然後實現

注:三種方式可以在F:\Video\Course of study\JAVA\cxf_webservice中查看


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章