使用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的内容。上面的内容是和控制台的同步输出的。