提供了webservice的wsdl地址,如何生成消費端(客戶端),怎么調用已經提供的wsdl接口


1、新建一個java項目,然后新建web service client。

2、輸入wsdl地址

3、生成的消費端目錄如下

 

如何根據提供的wsdl地址調用接口(傳參和返回值的處理)

 1 public static Map<String, Object> queryRecordMsg(String contNo){
 2         
 3         Map<String,Object> rootResult = new HashMap<String,Object>();
 4         try{
 5             UnderwritingHistoryInformationQuerySrvBindingQSService service = new UnderwritingHistoryInformationQuerySrvBindingQSService();
 6             UnderwritingHistoryInformationQuerySrvPortType portType = service.getUnderwritingHistoryInformationQuerySrvBindingQSPort();
 7             SysMsgHeader parametersReqHeader = new SysMsgHeader();
 8             parametersReqHeader.setMsgId(makeTransNo());
 9             parametersReqHeader.setMsgDate(DateUtil.getCurrentDateStr());
10             parametersReqHeader.setMsgTime(DateUtil.getCurrentTimeStr()+".000");
11             parametersReqHeader.setServCd("P00001000884");
12             parametersReqHeader.setSysCd("055");
13             parametersReqHeader.setBizId("03_02_01_I01");
14             parametersReqHeader.setBizType("");
15             parametersReqHeader.setOrgCd("86");
16             parametersReqHeader.setResCd("");
17             parametersReqHeader.setResText("");
18             parametersReqHeader.setBizResCd("");
19             parametersReqHeader.setBizResText("");
20             parametersReqHeader.setVer("110.100.000");
21             //業務報文
22             com.newchinalife.service.bd.p00001000884.SrvReqBody parametersReqBody = new com.newchinalife.service.bd.p00001000884.SrvReqBody();
23             //業務報文頭
24             SRVReqHead srvReqHead = new SRVReqHead();
25             srvReqHead.setOperator("ebt");
26             srvReqHead.setRowNumStart("1");
27             srvReqHead.setPageRowNum("10");
28             srvReqHead.setPageFlag("0");
29             srvReqHead.setTotalRowNum("");
30             srvReqHead.setOrderFlag("0");
31             srvReqHead.setOrderField("");
32             parametersReqBody.setBizHeader(srvReqHead);
33             //業務報文體
34             com.newchinalife.service.bd.p00001000884.SrvReqBizBody srvReqBizBody = new com.newchinalife.service.bd.p00001000884.SrvReqBizBody();
35             com.newchinalife.service.bd.p00001000884.InputData inputData = new com.newchinalife.service.bd.p00001000884.InputData();
36             inputData.setPolno(contNo);// 存入投保單號
37             srvReqBizBody.setInputData(inputData);
38             parametersReqBody.setBizBody(srvReqBizBody);
39             //初始化響應的對象
40             Holder<SysMsgHeader> parametersResHeader = new Holder<SysMsgHeader>();
41             Holder<com.newchinalife.service.bd.p00001000884.SrvResBody> parametersResBody = new Holder<com.newchinalife.service.bd.p00001000884.SrvResBody>();
42             portType.underwritingHistoryInformationQuery(parametersReqHeader, parametersReqBody, parametersResHeader, parametersResBody);
43             String resultCode = parametersResHeader.value.getBizResCd();
44             String resultMsg = parametersResHeader.value.getBizResText();
45             log.error("根據投保單號:"+contNo+"查詢承保操作履歷,resultCode:"+resultCode+",resultMsg:"+resultMsg);
46             List<HashMap<String, Object>> resultList = new ArrayList<HashMap<String, Object>>();            
47             
48             if ("0".equals(resultCode)) {
49                 List<com.newchinalife.service.bd.p00001000884.Result> results =  parametersResBody.value.getBizBody().getOutputData().getResult();
50                 for(com.newchinalife.service.bd.p00001000884.Result result :results){
51                     HashMap<String, Object> resultMap = new HashMap<String,Object>();
52                     resultMap.put("rowNo", result.getRowNo());
53                     resultMap.put("polNo", result.getPolNo());
54                     resultMap.put("opertor", result.getOperator());
55                     resultMap.put("startDate", result.getStartDate());
56                     resultMap.put("enDate", result.getEndDate());
57                     resultMap.put("state", result.getState());
58                     resultList.add(resultMap);
59                 }
60             }
61             rootResult.put("resultCode", resultCode);
62             rootResult.put("resultMsg", resultMsg);
63             rootResult.put("resultList", resultList);
64             return rootResult;
65         }catch (Exception e) {
66             e.printStackTrace();
67         }
68         return rootResult;
69     }

 

總結:

以上代碼均為項目中涉及到的,希望對大家有幫助,如有問題,可QQ聯系。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM