axis2 发布成 war 包发布 axis打成war包

axis2 发布成 war 包发布 axis打成war包

最近做项目使用axis2搭建web service项目。应用服务器使用的是Tomcat,axis2搭建的web service项目是直接放在axis2.war包解压后的services文件夹内。并且使用Eclipse插件生成的是aar后缀的发布文件。

但是很多项目是需要打成war包发布,网上关于这个操作的比较少,其实在与spring结合的时候就是一个将axis2项目修改成可war的操作。具体可参加开始提供的链接。

本文主要是将一个最基本的web工程添加axis2支持。

首先创建一个web工程,目录结构如下


axis2 发布成 war 包发布 axis打成war包

解压axis2.war目录结构如下:

 


axis2 发布成 war 包发布 axis打成war包
 下面开工:

 

  1. 将axis2文件夹下的axis2-web 复制到我们自己项目下的Web-Root下。
  2. 将axis2\WEB-INF下的conf文件夹,modules文件夹复制到 Web-Root\WEB-INF目录下
移动后的截图如下:

axis2 发布成 war 包发布 axis打成war包

出现错误是因为axis2的jar包没有导入,将axis2使用的jar文件复制到lib目录即可,若jsp仍有错误请自行调试,不影响项目发布。
  4.在我们的项目WEB-INF目录下创建services\任意文件名\META-INF目录结构,然后将service.xml和你的[项目名称.wsdl]复制到这里面。如图:


axis2 发布成 war 包发布 axis打成war包
 5.打开AxisWar项目下的web.xml,添加如下servlet:

 

Xml代码 复制代码   收藏代码
  1. <!--注册axis2的servlet  -->  
  2.   <servlet>     
  3.         <servlet-name>AxisServlet</servlet-name>     
  4.         <servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class>     
  5.         <load-on-startup>1</load-on-startup>     
  6.     </servlet>     
  7.              
  8.     <servlet-mapping>     
  9.         <servlet-name>AxisServlet</servlet-name>     
  10.         <url-pattern>/services/*</url-pattern>     
  11.     </servlet-mapping>    
<!--注册axis2的servlet  -->
  <servlet>  
        <servlet-name>AxisServlet</servlet-name>  
        <servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class>  
        <load-on-startup>1</load-on-startup>  
    </servlet>  
          
    <servlet-mapping>  
        <servlet-name>AxisServlet</servlet-name>  
        <url-pattern>/services/*</url-pattern>  
    </servlet-mapping>  

 这样我们的系统就和axis2绑定在了一起。

6.将项目打包成war,发布到tomcat中。

注意你的service.xml里定义的service名称假设为“TermService”

访问如下地址即可测试webService是否生成成功:

http://localhost:8080/Axis_War/services/TermService?wsdl

 

 

 

axis2 发布成 war 包发布

 

axis2 打成 war 包发布

 

有问题请留言,谢谢。

你可能感兴趣的:(axis2)