少年阿賓

          那些青春的歲月

            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 閱讀(9313) 評論(0)  編輯  收藏 所屬分類: AXIS2
          主站蜘蛛池模板: 蓬莱市| 景宁| 凤凰县| 文化| 当阳市| 凤台县| 乐昌市| 建平县| 新蔡县| 阿拉尔市| 德庆县| 冕宁县| 永德县| 曲周县| 孙吴县| 金坛市| 和龙市| 崇礼县| 衢州市| 静海县| 芒康县| 新乡市| 河间市| 永济市| 清水县| 黄梅县| 东海县| 莎车县| 宁津县| 侯马市| 金阳县| 行唐县| 诸城市| 喜德县| 泽州县| 集安市| 安阳县| 佛冈县| 临洮县| 库车县| 同仁县|