Axis可以通过Module模块进行扩展,用户可以编写定制自己的Module模块。编写一个Module的模块至少需要实现两个接口,分别是Handler和Module接口。开发axis2的Module模块需要如下步骤:
1、 实现Module接口的实现类,这个类要完成基本的初始化、销毁等操作
2、 实现Handler接口的实现类,这个类主要是完成业务处理
3、 在META-INF目录下,创建module.xml配置文件
4、 在axis2.xml中增加配置module的模块
5、 在services.xml中增加module的模块配置
6、 最后发表axis2的module模块,需要用jar命令将工程打包成mar,然后将mar文件发布到[tomcat_home]/webapps/axis2/WEB-INF/modules目录下;
首先编写一个简单的WebService,代码如下:
代码
编写Module接口的实现类,代码如下:
代码
编写实现Handler接口的实现类,代码如下:
代码
编写module.xml文件
代码
编写services.xml文件
代码
在[tomcat_home]\webapps\axis2\WEB-INF\conf中axis2.xml文件中加入内容,在所有的<phaseOrder>标签中加入 <phase name="customPhase"/>
打包发布module,在c盘建立CustomModuleService,然后将CustomModule.class和CustomHandler.class以及类路径目录复制到该目录。然后将module.xml文件放到META-INF(没有新建)目录。
运行jar命令:jar cvf custom-module.mar .
将生成的custom-module.mar文件粘贴到[tomcat_home] \webapps\axis2\WEB-INF\modules目录中
发布WebService,建立目录simpleWebService,将SimpleWebService.xml和类路径复制到该目录下,将services.xml复制到META-INF目录。
运行jar命令:jar cvf simple-service.aar .
将生成的simple-service.aar文件复制到[tomcat_home] \webapps\axis2\WEB-INF\services目录下
然后重启tomcat服务。
客户端访问WebService代码
代码