<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    love fish大鵬一曰同風起,扶搖直上九萬里

    常用鏈接

    統計

    積分與排名

    friends

    link

    最新評論

    AXIS學習(1)(轉)

    1.axis服務器包的校驗。
      到http://ws.apache.org/下載axis后,解壓,拷貝axis到tomcat的webapps目錄下。啟動tomcat,運行http://localhost:8080/axis
      點擊“validation”,程序會檢測少的包,并提示下載路徑。我目前包含的包如下:
        axis.jar;                              
     axis-ant.jar;                          
     axis-schema.jar;                       
     commons-discovery-0.2.jar;             
     commons-httpclient-3.0-rc2.jar;        
     commons-logging-1.0.4.jar;             
     jaxrpc.jar;                            
     log4j-1.2.8.jar;                       
     saaj.jar;                              
     wsdl4j-1.5.1.jar;                      
     activation.jar;                        
     mail.jar    

    2.環境變量的配置
      其實運行axis是不用配置環境變量的。但有的時候需要利用axis提供的一些工具,產生一些文件,需要應用很多包,利用ClassPath就比較方便了。
      AXIS_HOME:
      AXIS_LIB:
      AXISCLASSPATH:
     
    3.把axis集成 到項目中
      a、把上面所提到的包拷貝到項目相應的lib目錄中
      b、修改web.xml文件,增加所需的servlet配置
      <servlet>
      <servlet-name>AxisServlet</servlet-name>
      <servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
     </servlet>

     <servlet>
      <servlet-name>AdminServlet</servlet-name>
      <servlet-class>org.apache.axis.transport.http.AdminServlet</servlet-class>
      <load-on-startup>100</load-on-startup>
     </servlet>

     <servlet>
      <servlet-name>SOAPMonitorService</servlet-name>
      <servlet-class>org.apache.axis.monitor.SOAPMonitorService</servlet-class>
      <init-param>
       <param-name>SOAPMonitorPort</param-name>
       <param-value>5001</param-value>
      </init-param>
      <load-on-startup>100</load-on-startup>
     </servlet>

     <servlet-mapping>
      <servlet-name>AxisServlet</servlet-name>
      <url-pattern>/servlet/AxisServlet</url-pattern>
     </servlet-mapping>

     <servlet-mapping>
      <servlet-name>AxisServlet</servlet-name>
      <url-pattern>*.jws</url-pattern>
     </servlet-mapping>

     <servlet-mapping>
      <servlet-name>AxisServlet</servlet-name>
      <url-pattern>/services/*</url-pattern>
     </servlet-mapping>

     <servlet-mapping>
      <servlet-name>SOAPMonitorService</servlet-name>
      <url-pattern>/SOAPMonitor</url-pattern>
     </servlet-mapping>

     <session-config>
      <session-timeout>5</session-timeout>
     </session-config>

     <mime-mapping>
      <extension>wsdl</extension>
      <mime-type>text/xml</mime-type>
     </mime-mapping>

     <mime-mapping>
      <extension>xsd</extension>
      <mime-type>text/xml</mime-type>
     </mime-mapping>
      
    4.服務發布(jws文件發布和定制發布)
      a、jws文件發布
      在web應用程序目錄下,新建一個jws文件,例如:Hello.jws文件(其實就是個java文件,不包含包名)。 
      public class Hello {
     public String hello(String name){
      if(name==null){
       name="";
      }
      return "Hi,你好 "+name+",歡迎來到Web服務世界!";
     }
      }
      這樣就可以直接查看hello服務相應的wsdl了:http://localhost:8080/testaxis/hello.jws?wsdl
     
      b.定制發布。
      定制發布,依賴一個server-confif.wsdd文件。
      在web-inf目錄下新建一個deploy.wsdd文件,設置發布的服務,例如:
      <deployment xmlns="http://xml.apache.org/axis/wsdd/"
                xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
        <service name="city" provider="java:RPC">
          <parameter name="className" value="yhp.test.axis.service.CityService"/>
          <parameter name="allowedMethods" value="*"/>
        </service>
      </deployment>
     
      利用axis提供的工具,就可以生成server-confif.wsdd文件了:
      java -cp %AXISCLASSPATH% org.apache.axis.client.AdminClient deploy.wsdd
      在運行過程中發現:如果沒有把axis自帶的應用發布到服務器上,運行時會提示404的錯誤,未發現axis/servlet/AxisServlet。

    5.客戶端調用
            String endpoint = "http://localhost:" + "8080"
        + "/testaxis/services/city";  //以定制發布方式,如果是jws文件,則endpoint為相應的jws文件

      Service service = new Service();
      Call call = (Call) service.createCall();
      call.setTargetEndpointAddress(new java.net.URL(endpoint));
      call.setOperationName("getZip");

      String res = (String) call.invoke(new Object[] {""});//object數組為遠程方法的參數 

      System.out.println(res);
      
    6.生成客戶端stub相關類
       Axis提供了工具生成客戶端stub相關的類,即通過wsdl產生stub。
       java -cp %AXISCLASSPATH% org.apache.axis.wsdl.WSDL2Java http://localhost:8080/testaxis/services/city?wsdl

    posted on 2006-05-23 17:05 liaojiyong 閱讀(340) 評論(0)  編輯  收藏 所屬分類: Mixture

    主站蜘蛛池模板: 成全在线观看免费观看大全 | 国产亚洲精品美女| 成人免费激情视频| 亚洲国产高清美女在线观看| 亚洲高清视频在线| 成年丰满熟妇午夜免费视频| 亚洲成A人片在线观看无码3D | 国产黄色免费观看| 18女人腿打开无遮掩免费| 亚洲AV日韩AV天堂一区二区三区 | 国产AV日韩A∨亚洲AV电影| 午夜时刻免费入口| 狠狠入ady亚洲精品| 亚洲国产婷婷综合在线精品| 九九久久国产精品免费热6| 91香蕉成人免费网站| 四虎亚洲精品高清在线观看| 又黄又大又爽免费视频| yellow免费网站| 亚洲国产成人久久综合碰碰动漫3d | 亚洲自偷自拍另类12p| 色www免费视频| 亚洲精品人成无码中文毛片| 久久久精品视频免费观看| 69天堂人成无码麻豆免费视频| 亚洲人成网站在线观看播放青青| 国产精品免费一区二区三区| 国产精品亚洲成在人线| 亚洲人成免费网站| 最新亚洲人成无码网站| 怡红院亚洲怡红院首页| 国产乱子精品免费视观看片| 久久亚洲中文字幕无码| 国产日韩亚洲大尺度高清| 国产精品成人免费福利| 免费国产草莓视频在线观看黄| 国产亚洲A∨片在线观看| 最近最新中文字幕完整版免费高清 | 啦啦啦完整版免费视频在线观看| 亚洲国产精品成人综合色在线| 伊人久久大香线蕉亚洲|