Java調用WebService 介面 執行個體

來源:互聯網
上載者:User

標籤:java調用webservice

這裡給大家介紹一下,Java調用webservice的一個執行個體的過程。

本項目不能運行,因為介面地址不可用。


這裡只是給大家介紹一個過程,同時留作自己的筆記。如果要學習,可以參照別人的執行個體。比較好。


①選擇項目根目錄的src ,右鍵,new --》 webservice client  

然後輸入地址:

http://172.18.100.52:456/hello?wsdl

必須要加wsdl結尾,這樣才是一個webservice的介面。

finlish。這時候重新整理項目。可以看到項目下/src/com/tem 下面產生了用戶端的代碼。

用戶端就可以調用了。

準備參數:

public class PubController extends BaseMultiActionController{    //商戶編碼private final String merchantId = "M14081916173300001";//ipprivate final String merchantIP = "106.38.40.86";//驗證keyprivate final String merchantKey = "d82f7b84baabf3989ad6da300ea8dad7";private PubManager pubManager;public void setPubManager(PubManager pubManager) {this.pubManager = pubManager;}    private BillManager billManager;public void setBillManager(BillManager billManager) {this.billManager = billManager;}/** * 商戶資訊查詢介面 * @param request * @param response * @return * @throws Exception */public void getScgdUser(HttpServletRequest request, HttpServletResponse response) throws Exception {AppClassGeneric<QueryCustomerRsp> appClass = new AppClassGeneric<QueryCustomerRsp>();//參數//查詢條件之一:卡類型String QueryType=ServletRequestUtils.getStringParameter(request,"QueryType");//查詢條件之二:對應的查詢號String QueryValue=ServletRequestUtils.getStringParameter(request,"QueryValue");try {            String svcCont = "<![CDATA[<?xml version=\"1.0\" encoding=\"UTF-8\"?>"+    "<QueryCustomerReq>"+"<QueryValue>"+QueryValue+"</QueryValue>"+"<QueryType>"+QueryType+"</QueryType>"+"</QueryCustomerReq>"+"]]>";            ServiceRequestVo serviceRequestVo = new ServiceRequestVo("SCVC001","T001",svcCont,null);serviceRequestVo.setSvcCont(svcCont);//擷取簽名,傳遞簽名String sign = getSign(serviceRequestVo);ServiceRequestVo serviceRequestVo2=pubManager.getScgdUser(serviceRequestVo,sign);String json=xmlStringToJson(serviceRequestVo2.getSvcCont().replace("<QueryCustomerRsp>", "").replace("</QueryCustomerRsp>",""));QueryCustomerRsp queryCustomerRsp= JSON.parseObject(json, QueryCustomerRsp.class);if (serviceRequestVo2.getResponse().getRspCode().equals("00000")) {appClass.setMessageStatus(MsgStatus.SUCCESS);appClass.setT(queryCustomerRsp);}else {appClass.setMessageStatus(MsgStatus.FAIL);appClass.setMessage(serviceRequestVo2.getResponse().getRspDesc());}} catch (Exception e) {appClass.setMessageStatus(MsgStatus.FAIL);appClass.setMessage(e.getMessage());e.printStackTrace();} finally {JSONObject json = JSONObject.fromObject(appClass);response.setContentType("text/html;charset=UTF-8");response.getWriter().print(json);response.getWriter().flush();}}


使用本地產生的程式碼調用webservice介面:

public class PubManagerImpl implements PubManager{//產生的webservice代理類。本地Java代碼。 PubWebServicePortTypeProxy  pubWebServicePortTypeProxy=new  PubWebServicePortTypeProxy();/** * 使用者資訊查詢介面 * @throws RemoteException  */@Overridepublic ServiceRequestVo getScgdUser(ServiceRequestVo serviceRequestVo,String sign) throws RemoteException {//調用webservice 介面中的方法。return pubWebServicePortTypeProxy.scbss(serviceRequestVo,sign); }



本文出自 “JianBo” 部落格,請務必保留此出處http://jianboli.blog.51cto.com/12075002/1887421

Java調用WebService 介面 執行個體

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.