乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      axis2開發(fā)webservice入門到精通

       liang1234_ 2019-05-16

      1,準(zhǔn)備工作:

      首先我們要下載:axis2-1.4.1-war(發(fā)布webservice),axis2-1.4.1-bin.zip(webservice調(diào)用使用的各種包)。


      下載好了,把a(bǔ)xis2-1.4.1-war目錄下面的axis2.war發(fā)布到tomcat中。發(fā)布好,訪問:http://localhost:8080/axis2/  界面如下:

      axis2開發(fā)webservice入門到精通
      然后編寫我們的java類,注意java類不要包,如下面:


      axis2開發(fā)webservice入門到精通

      axis2開發(fā)webservice入門到精通

      然后把這個(gè)類的class文件拷貝D:\apache-tomcat-6.0.36\webapps\axis2\WEB-INF\pojo  如果WEB-INF這個(gè)目錄下面沒有pojo這個(gè)目錄,那你得必須建立一個(gè),因?yàn)樵赼xis2的配置文件中配置的(文件路徑是:conf/axis2.xml)


      axis2開發(fā)webservice入門到精通

       


      拷貝后,啟動你的tomcat,訪問http://localhost:8080/axis2/services/listServices  看是否發(fā)布成功,成功界面如下面:


      axis2開發(fā)webservice入門到精通

       

      這樣 你就可以訪問這兩個(gè)方法了,

      http://localhost:8080/axis2/services/SimpleService/getGreeting?name=bill 

      http://localhost:8080/axis2/services/SimpleService/getPrice


      成功界面如下:

      axis2開發(fā)webservice入門到精通

      axis2開發(fā)webservice入門到精通


       

      好,你的webservie就已經(jīng)發(fā)布好,接下來 我們就來調(diào)用發(fā)布的webservice,兩種方法:

      第一種:代碼式



       

      package com.tl.test;


      import org.apache.axis2.addressing.EndpointReference;

      import org.apache.axis2.client.Options;

      import org.apache.axis2.rpc.client.RPCServiceClient;

      import javax.xml.namespace.QName;

      public class RPCClient {

       

      public static void main(String[] args) throws Exception {

      //  使用RPC方式調(diào)用WebService 

      RPCServiceClient serviceClient = new RPCServiceClient();

      Options options = serviceClient.getOptions();

      //  指定調(diào)用WebService的URL

      EndpointReference er = new EndpointReference("http://localhost:8080/axis2/services/SimpleService");

      options.setTo(er);

       

      //  指定getGreeting方法的參數(shù)值

      Object[] opAddArgs = new Object[]{"張三"};

       

      //指定getGreeting方法返回值的數(shù)據(jù)類型的class對象

      Class[] classs = new Class[]{String.class};

       

      //指定要調(diào)用的getGreeting方法及wsdl文件的命名空間,第一個(gè)參數(shù)表示W(wǎng)SDL文件的命名空間

      //通過訪問http://localhost:8080/axis2/services/SimpleService?wsdl 就可以看見 元素的targetNamespace屬性值


      界面如下:

      axis2開發(fā)webservice入門到精通


      QName qname = new QName("http://ws./axis2","getGreeting");

       

      //調(diào)用getGreeting方法并輸出該方法的返回值

      //這里有三個(gè)參數(shù)的意思:1,是QName對象,表示要調(diào)用的方法名;2,webservice的參數(shù)值,參數(shù)類型是Object[];3,返回值class對象,參數(shù)類型是Class[],

      System.out.println(serviceClient.invokeBlocking(qname, opAddArgs,classs)[0]);

       

      //下面是調(diào)用getPrice方法的代碼,這些代碼與調(diào)用getGreeting方法的代碼類似

       

      classs = new Class[]{int.class};

      qname = new QName("http://ws./axis2","getPrice");

      //如果沒有參數(shù),參數(shù)不能為null,應(yīng)該為new Object[]{},沒有返回值,就應(yīng)該調(diào)用invokeRobust

      System.out.println(serviceClient.invokeBlocking(qname, new Object[]{},classs)[0]);

       

      }

      }


      我們運(yùn)行的結(jié)果如下:
      axis2開發(fā)webservice入門到精通


      第二種:wsdl2java

      要配置環(huán)境變量:AXIS2_HOME

      這個(gè)時(shí)候 我們下axis2-1.4.1-bin.zip 這個(gè)文件就派上用途了,打開該文件中bin里面就可以找到wsdl2java.bat 


      然后我們通過命令行工具 來實(shí)現(xiàn)這個(gè) 首先我們到該文件下面的bin目錄,如:

      axis2開發(fā)webservice入門到精通

       

      然后開始工作:運(yùn)行該命令:wsdl2java -uri http://localhost:8080/axis2/services/SimpleService?wsdl -p com.tl.test -s -o stub


      解釋:-uri 后面運(yùn)行的是 你的wsdl, -p 是文件生成的包名 -o stub生成的文件目錄,是bin目錄下面的


      運(yùn)行結(jié)果如下:

      axis2開發(fā)webservice入門到精通

       

      這樣 你就可以在你的bin里面下面找到你要的文件了

      如下面:

      axis2開發(fā)webservice入門到精通

      然后 你就可以把這個(gè)類 拷貝到你的工程下面使用了,主要包名,我這里是com.tl.test,所以你相應(yīng)的在你的工程下面建一個(gè)com.tl.test,


      如下面:

      axis2開發(fā)webservice入門到精通


      最后,我們就可以建立一個(gè)類來測試,代碼如下面:


       

      package com.tl.test;



      //這樣的方法大大的減少了調(diào)用webservice的步驟,并且代碼更加簡介。但要注意的是,wsdl2java.bat命令生成stub類將

      //webservice方法的參數(shù)都封裝在相應(yīng)的類中。

      public class StubClient {

       

      public static void main(String[] args) throws Exception {

      SimpleServiceStub sss = new SimpleServiceStub();

      //封裝getGreeting方法的參數(shù)

      SimpleServiceStub.GetGreeting gg = new SimpleServiceStub.GetGreeting();

      gg.setName("王武");

      System.out.println(sss.getGreeting(gg).get_return());

      System.out.println(sss.getPrice().get_return());

       

      }


      }



      運(yùn)行效果如下:

      axis2開發(fā)webservice入門到精通
      到此,我們就結(jié)束,祝你測試通過。


        本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多