webservice发布--使用axis2发布

如何使用axis2发布webservice?
 axis2发布webservice分为打包发布和不打包发布两种,今天主要研究了一下打包发布的方法

1.部署axis2框架(使用tomcat部署)
 1.1 下载axis2的war包,测试使用的war包为axis2-1.6.2-war.zip,解压获得axis2.war包
 1.2 将axis2.war包拷贝到%Tomcat_Home%/webapps目录下,然后启动tomcat,启动成功之  后访问http://localhost:8080/axis2,点击services可以看见已发布成功的webservi  ce列表,在webapps目录可以看见产生了一个axix2的文件夹
   
2.开发需要发布的webservice服务
 2.1 例如简单的SayHello为例
 
   package axis2Demo;

   public class SayHello {
    
    public String sayHello(String args){
     try{
      return args;
     }finally{
      System.out.println("sayHello被调用...");
     }
    }
    
    public String sayGoodBye(String args){
     try {
      return args;
     }finally{
      System.out.println("sayGoodBye被调用...");
     }
    }
   }
   
 2.2 在src目录下创建META-INF\services.xml,编辑services.xml内容
 
   <service name="SayHelloDemo">   
       <description>This is a axis2 publish demo</description>   
       <parameter name="ServiceClass">axis2Demo.SayHello</parameter>   
       <operation name="sayHello">   
           <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />   
       </operation>   
       <operation name="sayGoodBye">   
           <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />   
       </operation>
   </service>   
 
   services.xml内容有兴趣可以另行研究
 
3 发布axis2的webservice
 3.1 打包需要发布成为Webservice的应用程序为jar包,jar包必须包含
   META-INF\services.xml,提醒一下打包java应用程序时,打包的起始路径不能从包名
   一下的目录开始打包,应该等级包的上一层目录开始打包class文件:
   如eclipse编译之后的文件都在%eclipse_home%\project_name\bin目录下,那么打包一个应用时就应该从bin目录开始打包。
   
 3.2 将打包之后的jar包后缀名改为aar,例如xxx.jar 修改为 xxx.aar 便于axis2识别,
   然后将aar包放入%tomcat_home%\webapps\axis2\WEB-INF\services目录下
   
 3.3 启动tomcat可以再日志中观察到成功加载了xxx.arr应用,通过浏览器访问可以发现
   产生了一个新的webservice应用 SayHelloDemo ,至此webservice发布成功

你可能感兴趣的:(webservice发布--使用axis2发布)