隨筆 - 312, 文章 - 14, 評(píng)論 - 1393, 引用 - 0
          數(shù)據(jù)加載中……

          WebService大講堂之Axis2(10):使用soapmonitor模塊監(jiān)視soap請(qǐng)求與響應(yīng)消息

          本文為原創(chuàng),如需轉(zhuǎn)載,請(qǐng)注明作者和出處,謝謝!

          上一篇:WebService大講堂之Axis2(9):編寫(xiě)Axis2模塊(Module)

              Axis2中提供了一個(gè)Axis2模塊(soapmonitor),該模塊實(shí)現(xiàn)了與《WebService大講堂之Axis2(9):編寫(xiě)Axis2模塊(Module)》中實(shí)現(xiàn)的logging模塊相同的功能,所不同的是,logging模塊直接將SOAP請(qǐng)求與響應(yīng)消息輸出到Tomcat控制臺(tái)中,而soapmonitor模塊利用applet直接在頁(yè)面中輸出SOAP請(qǐng)求和響應(yīng)消息。

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

          1步:部署AppletServlet

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

          2步:配置Servlet

              打開(kāi)<Tomcat安裝目錄>\webapps\axis2\WEB-INF\web.xml文件,在其中加入如下的內(nèi)容:

          <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文件的內(nèi)容如下:
          <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模塊已經(jīng)在axis2.xml進(jìn)行配置了,因此,在本例中不需要再對(duì)axis2.xml文件進(jìn)行配置了。   

          4步:使用soapmonitor模塊

              啟動(dòng)Tomcat后,在瀏覽器中輸入如下的URL:

          http://localhost:8080/axis2/SOAPMonitor

              在瀏覽器中將出現(xiàn)soapmonitor所帶的Applet的界面,當(dāng)訪(fǎng)問(wèn)MyServicegetGreeting方法時(shí),在Tomcat控制臺(tái)與Applet中都顯示了相應(yīng)的SOAP請(qǐng)求和響應(yīng)消息。如圖1和圖2分別是調(diào)用了兩次getGreeting方法后輸出的SOAP請(qǐng)求和響應(yīng)消息。



          圖1



          圖2

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

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




          Android開(kāi)發(fā)完全講義(第2版)(本書(shū)版權(quán)已輸出到臺(tái)灣)

          http://product.dangdang.com/product.aspx?product_id=22741502



          Android高薪之路:Android程序員面試寶典 http://book.360buy.com/10970314.html


          新浪微博:http://t.sina.com.cn/androidguy   昵稱(chēng):李寧_Lining

          posted on 2009-02-17 09:22 銀河使者 閱讀(9222) 評(píng)論(8)  編輯  收藏 所屬分類(lèi): java 原創(chuàng)webservice

          評(píng)論

          # re: WebService大講堂之Axis2(10):使用soapmonitor模塊監(jiān)視soap請(qǐng)求與響應(yīng)消息  回復(fù)  更多評(píng)論   

          除了用模塊還有沒(méi)有其他方法可以獲取SOAP頭的?謝謝
          2009-05-18 12:03 | 我有問(wèn)題

          # re: WebService大講堂之Axis2(10):使用soapmonitor模塊監(jiān)視soap請(qǐng)求與響應(yīng)消息  回復(fù)  更多評(píng)論   

          SOAP消息是底層的信息,除非提供了接口,否則無(wú)法獲得這些信息。我一般是通過(guò)模塊獲得soap消息,但通過(guò)其他方式還沒(méi)試過(guò)。
          2009-05-18 12:49 | 銀河使者

          # re: WebService大講堂之Axis2(10):使用soapmonitor模塊監(jiān)視soap請(qǐng)求與響應(yīng)消息  回復(fù)  更多評(píng)論   

          大哥,你的QQ群滿(mǎn)人了阿,加不進(jìn)去阿,加我阿,我qq451684548
          2009-07-14 09:52 | 大佬

          # re: WebService大講堂之Axis2(10):使用soapmonitor模塊監(jiān)視soap請(qǐng)求與響應(yīng)消息  回復(fù)  更多評(píng)論   

          我有按照你上面的配置,啟動(dòng)能成功。但是訪(fǎng)問(wèn)服務(wù)http://localhost:8080/axis2/SOAPMonitor的時(shí)候老是不能彈出什么東西
          就光禿禿的一個(gè)頁(yè)面,什么都沒(méi)有顯示,服務(wù)器也沒(méi)有報(bào)錯(cuò)!
          這個(gè)是什么原因啊?沒(méi)實(shí)現(xiàn)你上面說(shuō)的那個(gè)applet界面呀!!
          2009-10-24 21:14 | zuowangxi

          # re: WebService大講堂之Axis2(10):使用soapmonitor模塊監(jiān)視soap請(qǐng)求與響應(yīng)消息  回復(fù)  更多評(píng)論   

          @zuowangxi
          有可能是你的瀏覽器阻止了applet的顯示,試試修改一下瀏覽器的安全隔離級(jí)別
          2010-01-21 17:25 | Mr.Blue

          # re: WebService大講堂之Axis2(10):使用soapmonitor模塊監(jiān)視soap請(qǐng)求與響應(yīng)消息  回復(fù)  更多評(píng)論   

          后面的章節(jié)怎么沒(méi)有了?
          2010-06-03 18:09 | web

          # re: WebService大講堂之Axis2(10):使用soapmonitor模塊監(jiān)視soap請(qǐng)求與響應(yīng)消息  回復(fù)  更多評(píng)論   

          在WEB-INFO/lib里面已經(jīng)有了soapmonitor的jar,還有必要把解壓出來(lái)的東西放到classes下面嗎?
          2010-09-10 21:21 | A.L

          # re: WebService大講堂之Axis2(10):使用soapmonitor模塊監(jiān)視soap請(qǐng)求與響應(yīng)消息[未登錄](méi)  回復(fù)  更多評(píng)論   

          好東西,這十講是過(guò)了一遍了,就是不知道怎么用到實(shí)際項(xiàng)目開(kāi)發(fā)中去~~~
          2011-08-04 10:03 | frank
          主站蜘蛛池模板: 沾益县| 武夷山市| 托克托县| 平江县| 黑河市| 奉贤区| 双鸭山市| 台山市| 长兴县| 镇沅| 光泽县| 黄平县| 台东县| 兰考县| 南充市| 丹巴县| 大方县| 麻栗坡县| 精河县| 格尔木市| 麻阳| 吉木萨尔县| 汨罗市| 冷水江市| 博兴县| 庆云县| 宽城| 钟祥市| 侯马市| 呼和浩特市| 翼城县| 措勤县| 北辰区| 洪雅县| 化隆| 竹北市| 乳山市| 彰化市| 宽城| 安图县| 天峨县|