[转]Axis1.2 下SOAPMonitor问题的解决

[转]Axis1.2 下SOAPMonitor问题的解决
Axis1.2+Jdk1.5+Tomcat5.5.12 ,安装成功以后,SOAPMonitor能启动,但是红字的一串信息:The SOAPMonitor is unable to communicate with the server. 就表示启动不成功,折腾几天,google查找了好多信息,也没有一个确切的说法,国内有人说版本问题,似乎axis1.2只适用于jdk1.4或是tomcat5.0版本,还真试过改了,也没有效果,在java控制台上有提示非法的本地主机地址。一次偶然的机会,让我知道该改哪个数据了。(同一台机器上安装多个tomcat,相同的端口再现冲突时就需要对端口进行更改)
可能是默认的5001端口被占用,将axis\WEB-INF下的web.xml文件中的SOAPMonitor的端口默认的5001改为其他的不会出现冲突的端口,问题解决。
唉,有时一个不起眼的问题也能折腾死人,解决后只会一声叹息。

 在tomcat容器下自创建的web应用中也启动axis服务,想要添加SOAPMonitor的方法是:
1、编译
 将axis根目录下的SOAPMonitorApplet.java文件复制到web应用的根目录下,编译此文件同时将生成的类文件复制到应用根目录下的WEB-INF目录下。
2、修改web.xml文件
修改WEB-INF目录下的web.xml文件,添加两个元素<servlet>和<servlet-mapping>,具体内容如下:
<servlet>
    <servlet-name>SOAPMonitorService</servlet-name>
    <display-name>SOAPMonitorService</display-name>
    <servlet-class>
        org.apache.axis.monitor.SOAPMonitorService
    </servlet-class>
    <init-param>
      <param-name>SOAPMonitorPort</param-name>
      <param-value>5005</param-value>
    </init-param>
    <load-on-startup>100</load-on-startup>
  </servlet>
 <servlet-mapping>
    <servlet-name>SOAPMonitorService</servlet-name>
    <url-pattern>/SOAPMonitor</url-pattern>
  </servlet-mapping>
3、修改server-config.wsdd文件
配置文件中添加soapmonitor的配置信息如:
<handler name="soapmonitor" type="java:org.apache.axis.handlers.SOAPMonitorHandler">
  <service name="SOAPMonitorService" provider="java:RPC">
  <parameter name="allowedMethods" value="publishMessage"/>
  <parameter name="scope" value="Application"/>
  <parameter name="className" value="org.apache.axis.monitor.SOAPMonitorService"/>
 </service>
对于需要被soapmonitor监控的web服务,在其服务设置中添加信息如下
<service name="TestAdding" provider="java:RPC">
  <parameter name="allowedMethods" value="getAdd"/>
  <parameter name="className" value="test.TestAdding"/>
   <requestFlow>
    <handler type="soapmonitor"/>
   </requestFlow>
   <responseFlow>
    <handler type="soapmonitor"/>
   </responseFlow>
 </service>
4、运行测试
http://localhost:8080/TestAdding/SOAPMonitor 
[转]Axis1.2 下SOAPMonitor问题的解决_第1张图片
呵呵,好不容易折腾好了,看来原来的想法还是对的,只不过在配置文件时出了问题。

你可能感兴趣的:([转]Axis1.2 下SOAPMonitor问题的解决)