Terry.Li-彬

          虛其心,可解天下之問;專其心,可治天下之學;靜其心,可悟天下之理;恒其心,可成天下之業。

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            143 隨筆 :: 344 文章 :: 130 評論 :: 0 Trackbacks
          Axis2中提供了一個Axis2模塊(soapmonitor),該模塊實現了與《WebService大講堂之Axis2(9):編寫Axis2模塊(Module)》中實現的logging模塊相同的功能,所不同的是,logging模塊直接將SOAP請求與響應消息輸出到Tomcat控制臺中,而soapmonitor模塊利用applet直接在頁面中輸出SOAP請求和響應消息。

          ??? 下面是配置和使用soapmonitor模塊的步驟:???

          1步:部署AppletServlet

          ??? 由于axis2默認情況下已經自帶了soapmonitor模塊,因此,soapmonitor模塊并不需要單獨安裝。但applet所涉及到的相應的.class文件需要安裝一下。在<Tomcat安裝目錄>\webapps\axis2\WEB-INF\lib目錄中找到soapmonitor-1.4.1.jar文件,將該文件解壓。雖然applet并不需要soapmonitor-1.4.1.jar文件中所有的.class文件,但為了方便,讀者也可以直接將解壓目錄中的org目錄復制到<Tomcat安裝目錄>\webapps\axis2目錄中,Applet所需的.class文件需要放在這個目錄。然后再將org目錄復制到<Tomcat安裝目錄>\webapps\axis2\WEB-INF\classes目錄中,soapmonitor模塊中的Servlet所對應的.class文件需要放在這個目錄。

          2步:配置Servlet

          ??? 打開<Tomcat安裝目錄>\webapps\axis2\WEB-INF\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步:在services.xml文件中引用soapmonitor模塊

          ??? 與引用logging模塊一樣,引用soapmonitor模塊也需要使用<module>元素,引用soapmonitor模塊的services.xml文件的內容如下:
          <service?name="myService">
          ????
          <description>
          ????????使用logging和soapmonitor模塊
          ????
          </description>
          ????
          <!--??引用logging模塊??-->
          ????
          <module?ref="logging"/>
          ????
          <!--??引用soapmonitor模塊??-->
          ????
          <module?ref="soapmonitor"/>
          ????
          <parameter?name="ServiceClass">
          ????????service.MyService???
          ????
          </parameter>
          ????
          <messageReceivers>
          ????????
          <messageReceiver?mep="http://www.w3.org/2004/08/wsdl/in-out"
          ????????????class
          ="org.apache.axis2.rpc.receivers.RPCMessageReceiver"?/>
          ????
          </messageReceivers>
          </service>

          ??? 由于soapmonitor模塊已經在axis2.xml進行配置了,因此,在本例中不需要再對axis2.xml文件進行配置了。???

          4步:使用soapmonitor模塊

          ??? 啟動Tomcat后,在瀏覽器中輸入如下的URL:

          http://localhost:8080/axis2/SOAPMonitor

          ??? 在瀏覽器中將出現soapmonitor所帶的Applet的界面,當訪問MyServicegetGreeting方法時,在Tomcat控制臺與Applet中都顯示了相應的SOAP請求和響應消息。如圖1和圖2分別是調用了兩次getGreeting方法后輸出的SOAP請求和響應消息。



          圖1



          圖2

          ??? 如果讀者想讓loggingsoapmonitor模塊監視部署在Axis2中的所有WebService,可以在axis2.xml文件中使用<module>元素來引用這兩個模塊,代碼如下:

          ????<!--??引用logging模塊??-->
          ????
          <module?ref="logging"/>
          ????
          <!--??引用soapmonitor模塊??-->
          ????
          <module?ref="soapmonitor"/>

          posted on 2009-09-23 14:43 禮物 閱讀(318) 評論(0)  編輯  收藏 所屬分類: Axis
          主站蜘蛛池模板: 龙江县| 汶上县| 台江县| 焉耆| 青龙| 包头市| 德惠市| 寿光市| 博白县| 兴安盟| 宜黄县| 青河县| 社会| 容城县| 屏南县| 霍邱县| 海盐县| 婺源县| 静安区| 夏邑县| 河西区| 安庆市| 扶余县| 古交市| 广汉市| 获嘉县| 锡林郭勒盟| 岚皋县| 大足县| 铁岭县| 阿拉善左旗| 怀柔区| 淅川县| 家居| 洪雅县| 平定县| 凤冈县| 社会| 冀州市| 长子县| 宁武县|