在项目中集成Axis 1.x来开发Web Service

关键字: axis, web service

   本文以Axis 1.1版本为例,详细介绍如何在项目中集成Axis来开发Web Service。Axis 1.1只能在以下环境中运行:

          Tomcat 5.0.x及之前的版本

          JKD 1.4.x及之前的版本

 

    一、环境的搭建
        1、安装axis-1_1:拷贝axis-1_1到任意一个目录下即完成安装,如D:/axis-1_1。
        2、设置环境变量:
             AXIS_HOME:D:/axis-1_1
             AXIS_LIB:%AXIS_HOME%/lib
             AXISCLASSPATH:%AXIS_LIB%/axis.jar;%AXIS_LIB%/axis-ant.jar;%AXIS_LIB%/commons-discovery.jar;%AXIS_LIB%/commons-logging.jar;%AXIS_LIB%/jaxrpc.jar;%AXIS_LIB%/saaj.jar;%AXIS_LIB%/log4j-1.2.8.jar;%AXIS_LIB%/wsdl4j.jar;%AXIS_LIB%/xercesImpl.jar;%AXIS_LIB%/xml-apis.jar

 

    二、Axis框架的整合
        1、将D:/axis-1_1/lib下的所有jar文件拷贝到Web应用程序的WEB-INF/lib目录下。


        2、在web.xml文件中加入以下配置信息

Xml代码 复制代码
  1. <servlet>  
  2.        <servlet-name>AxisServlet</servlet-name>  
  3.        <servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>  
  4. </servlet>  
  5.      
  6. <servlet-mapping>  
  7.        <servlet-name>AxisServlet</servlet-name>  
  8.        <url-pattern>*.jws</url-pattern>  
  9. </servlet-mapping>  
  10.      
  11. <mime-mapping>  
  12.        <extension>wsdl</extension>  
  13.        <mime-type>text/xml</mime-type>  
  14. </mime-mapping>  
  15.   
  16. <mime-mapping>  
  17.        <extension>xsd</extension>  
  18.        <mime-type>text/xml</mime-type>  
  19. </mime-mapping>  

      

         3、在Web应用程序的根目录下新建一个文件夹用于存放jws文件,这里假设文件夹名为axis。可以将一个java文件通过修改其扩展名得到jws文件(注意:java文件不能包含包路径)。所以,我们可以先在java环境下编写好表示WebService的java类,然后,修改java类的扩展名为jws,即可得到我们需要的jws文件。

 

         4、我们在src的根目录新建一个无包路径的java类,假设文件名为Webservice,该java类源代码如下:

Java代码 复制代码
  1. public class Webservice {   
  2.        public String sayHello(String username){   
  3.               if(username==null || username.length()==0){   
  4.                      return "Hello Guest";   
  5.               }else{   
  6.                      return "Hello " + username;   
  7.               }   
  8.        }   
  9. }  
public class Webservice {
       public String sayHello(String username){
              if(username==null || username.length()==0){
                     return "Hello Guest";
              }else{
                     return "Hello " + username;
              }
       }
}

 

       5、将Webservice.java文件拷贝到上面创建的文件夹axis中,并修改其扩展名为jws。

 

       6、启动应用服务器后,在IE浏览器中访问该jws文件。作者是用Tomcat5.5发布的,端口为8888,所以访问jws文件的URL类似如下:
             http://localhost:8888/MyWebApp/axis/Webservice.jws

  

             WSDL描述的URL就类似如下:

                   http://localhost:8888/MyWebApp/axis/Webservice.jws?wsdl

  

             如果以上两个URL都能正常访问,则表示Axis框架已经整合成功。

 

    三、生成Web service接口文件
         如果项目中需要调用Web service中的方法时,需要根据WSDL描述的URL来生成相应的接口文件。生成接口文件的步骤如下:
         1、在DOS中定位到axis-1_1/lib目录,然后执行以下指令:
              java -cp "%AXISCLASSPATH%" org.apache.axis.wsdl.WSDL2Java http://localhost:8888/MyWebApp/axis/Webservice.jws?wsdl -o -p

  

             。指令执行完毕后,将会在lib目录产生java接口文件。作者范例中产生以下四个文件:
                   Webservice.java
                   WebserviceService.java
                   WebserviceServiceLocator.java
                   WebserviceSoapBindingStub.java

        

         2、将这些接口文件纳入到项目中,接口文件的包路径根据具体情况作调整。

 

   四、调用Web service方法的范例代码:

Java代码 复制代码
  1. WebserviceServiceLocator locator = new WebserviceServiceLocator();   
  2. Webservice wsUtil = locator.getWebservice(new URL("http://localhost:8888/MyWebApp/axis/Webservice.jws?wsdl"));   
  3. String ret = wsUtil.sayHello("Raymond.chen");  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值