有一个最简单的方法就是把axis2.war中的内容作为web app的基础, 来进行开发. 不过为了更清楚的了解如何在一个已有的web app中嵌入axis2, 那就只能手动了.
1、把以下内容copy到已有的web app中
axis2.war/axis2-web axis2.war/WEB-INF/* |
2、在已有web项目的web.xml中配置axis2 servlet
<web-app> <servlet> <servlet-name>AxisServlet</servlet-name> <display-name>Apache-Axis Servlet</display-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> </web-app> |
3、写一个简单的web服务类
package webservice; public class Test { public String testWS(String name){ return name + ", welcome to web service's world!"; } } |
4、配置Web Service.
由于axis2嵌入了web app, 所以web service就不用打包成aar,而是直接在/WEB-INF目录下创建相应的文件夹和services.xml---WEB-INF
---WEB-INF
| web.xml
|
---services
---wsTest
---META-INF
services.xml
5、services.xml
<?xml version="1.0" encoding="UTF-8"?> <serviceGroup> <service > <description>This is a sample Web Service.</description> <parameter locked="false"> webservice.Test </parameter> <operation > <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" /> </operation> </service> </serviceGroup> |
其实,axis2-web下面的东西可以不要那么多,我就只保留了index.jsp,httpbase.jsp和listServices.jsp这三个文件,这样集成后的工程就瘦身了许多。
http://blog.youkuaiyun.com/bruni/archive/2008/03/17/2193060.aspx
http://wso2.org/library/90