使用soapMonitor 可以监视到请求和响应的WebService 的基本信息,可以讲响应在控制台的信息显示在applet 控件上。
步骤如下:
1 、 部署相关的applet 和servlet
Axis2 有自带的monitor 模块,这里就不需要单独安装。在[tomcat_home]/webapps/axis2/WEB-INF/lib 目录中,找到 axis2-soapmonitor-servlet-1.5.3.jar 这个文件,将这个文件解压后,将里面的servlet 的class 文件放到 [tomcat_home]/webapps/axis2/WEB-INF/classes 目录下。将applet 的class 放到 [tomcat_home]/webapps/axis2 这个目录下即可。
2 、 配置Servlet ,这里配置的Servlet 就包含上一步复制的servlet-class
在web.xml 中增加如下配置
< servlet >
< servlet -name > SOAPMonitorService</ servlet -name>
< servlet -class > org.apache.axis2.soapmonitor.servlet.SOAPMonitorService</ servlet -class>
< init -param >
< param -name > SOAPMonitorPort</ param -name>
< param -value > 5001</ param -value>
</ init -param>
< load -on -startup > 1</ load -on-startup>
</ servlet >
< servlet -mapping >
< servlet -name > SOAPMonitorService</ servlet -name>
< url -pattern > /SOAPMonitor</ url -pattern>
</ servlet -mapping>
3 、 在要监视的WebService 的services.xml 文件中关联soapmonitor ,services.xml 配置文件如下:
< service name ="CustomModuleService">
< description > 使用soapmonitor SimpleWebService 模块</ description >
<!-- 引用soapmonitor 模块 -->
< module ref ="soapmonitor"/>
< parameter name ="ServiceClass">
com.hoo.module.SimpleWebService
</ parameter >
< messageReceivers >
< messageReceiver mep ="http://www.w3.org/2004/08/wsdl/in-out"
class ="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
< messageReceiver mep ="http://www.w3.org/2004/08/wsdl/in-only"
class ="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
</ messageReceivers >
</ service >
将上次的WebService 关联soapmonitor 这个module ,然后重新打包aar 发布。
4 、 请求http://localhost:8080/axis2/SOAPMonitor
可以看到Java 的Applet ,界面如下:
然后运行请求执行CustomModuleService 这个service 的时候,你就可一看到上面出现xml 的内容。上面的内容是和控制台的同步输出的。