少年阿賓

          那些青春的歲月

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks
          //方法一:
          package com.abin.lir.axis2.client;
          import org.apache.axiom.om.OMAbstractFactory;
          import org.apache.axiom.om.OMElement;
          import org.apache.axiom.om.OMFactory;
          import org.apache.axiom.om.OMNamespace;
          import org.apache.axis2.AxisFault;
          import org.apache.axis2.addressing.EndpointReference;
          import org.apache.axis2.client.Options;
          import org.apache.axis2.client.ServiceClient;
          public class UserClient {
          public static void main(String[] args) {
          try { 
          ServiceClient sc = new ServiceClient(); 
          Options opts = new Options(); 
          opts.setTo(new EndpointReference("http://localhost:9090/universal/services/play")); 
          opts.setAction("urn:echo"); 
          opts.setTimeOutInMilliSeconds(10000);
          sc.setOptions(opts); 
          OMElement res = sc.sendReceive(createPayLoad()); 
          System.out.println(res); 
          } catch (AxisFault e) { 
          e.printStackTrace(); 
          }
          public static OMElement createPayLoad(){ 
          OMFactory fac = OMAbstractFactory.getOMFactory(); 
          OMNamespace omNs = fac.createOMNamespace("http://localhost:9090/universal/services/play", "nsl"); 
          OMElement method = fac.createOMElement("getPassengerInfos",omNs); 
          OMElement value = fac.createOMElement("userID",omNs); 
          value.setText("1024"); 
          method.addChild(value); 
          return method; 
          }





          //方法二
          package com.abin.lir.axis2.client;
          import javax.xml.namespace.QName;
          import org.apache.axis2.AxisFault;
          import org.apache.axis2.addressing.EndpointReference;
          import org.apache.axis2.client.Options;
          import org.apache.axis2.rpc.client.RPCServiceClient;
          public class RPCClient {
          public static void main(String[] args) throws AxisFault {
           // 使用RPC方式調用WebService         
                  RPCServiceClient serviceClient = new RPCServiceClient(); 
                  Options options = serviceClient.getOptions(); 
                  // 指定調用WebService的URL 
                  EndpointReference targetEPR = new EndpointReference( 
                          "http://localhost:9090/universal/services/play"); 
                  options.setTo(targetEPR); 
                  // 指定方法的參數值 
                  Object[] requestParam = new Object[] {"1024"}; 
                  // 指定方法返回值的數據類型的Class對象 
                  Class[] responseParam = new Class[] {String.class}; 
                  // 指定要調用的getGreeting方法及WSDL文件的命名空間 
                  QName requestMethod = new QName("http://localhost:9090/universal/services/play", "getPassengerInfos"); 
                  // 調用方法并輸出該方法的返回值 
                  try {
          System.out.println(serviceClient.invokeBlocking(requestMethod, requestParam, responseParam)[0]);
          } catch (AxisFault e) {
          e.printStackTrace();
          }
          }




          //方法三
          package com.abin.lir.axis2.client;
          import org.apache.axiom.om.OMAbstractFactory;
          import org.apache.axiom.om.OMElement;
          import org.apache.axiom.om.OMFactory;
          import org.apache.axiom.om.OMNamespace;
          import org.apache.axis2.Constants;
          import org.apache.axis2.addressing.EndpointReference;
          import org.apache.axis2.client.Options;
          import org.apache.axis2.client.ServiceClient;
          public class AXIOMClient {
          private static EndpointReference targetEPR = new EndpointReference(
          "http://localhost:9090/universal/services/play");
          public static OMElement getPassengerInfos(String symbol) {
          OMFactory fac = OMAbstractFactory.getOMFactory();
          OMNamespace omNs = fac.createOMNamespace(
          "http://localhost:9090/universal/services/play",
          "tns");
          OMElement method = fac.createOMElement("getPassengerInfos", omNs);
          OMElement value = fac.createOMElement("userID", omNs);
          value.addChild(fac.createOMText(value, symbol));
          method.addChild(value);
          return method;
          }
          public static void main(String[] args) {
          try {
          OMElement getPassenger = getPassengerInfos("1024");
          Options options = new Options();
          options.setTo(targetEPR);
          options.setTransportInProtocol(Constants.TRANSPORT_HTTP);
          ServiceClient sender = new ServiceClient();
          sender.setOptions(options);
          OMElement result = sender.sendReceive(getPassenger);
          String response = result.getFirstElement().getText();
          System.err.println("Current passengers: " + response);
          } catch (Exception e) {
          e.printStackTrace();
          }
          }
          }
          posted on 2013-01-20 23:26 abin 閱讀(9315) 評論(0)  編輯  收藏 所屬分類: AXIS2
          主站蜘蛛池模板: 东港市| 台南县| 横山县| 台东县| 城口县| 岱山县| 卢氏县| 滨海县| 弥勒县| 万安县| 赤水市| 政和县| 石嘴山市| 临沭县| 高陵县| 兴和县| 玉山县| 广昌县| 三穗县| 大名县| 健康| 通渭县| 思茅市| 马边| 晋州市| 故城县| 涿州市| 襄垣县| 万盛区| 瑞丽市| 临武县| 泊头市| 寻甸| 临澧县| 屏南县| 乐至县| 丰台区| 上犹县| 河北省| 太仓市| 长汀县|