用Axis创建的Webservice的集成与发布
生活随笔
收集整理的這篇文章主要介紹了
用Axis创建的Webservice的集成与发布
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
axis可以隨意部署在大部分web application server上,如:tomcat。它與你自己部署的應用幾乎沒有任何的耦合關系你只需要在你的web.xml中配置一下axis就可以正常使用了。這樣我們能夠很方便的將axis集成到我們自己開發的項目上。具體的配置如下:[code] <listener>
<listener-class>org.apache.axis.transport.http.AxisHTTPSessionListener</listener-class>
</listener>
<servlet>
<servlet-name>AxisServlet</servlet-name>
<display-name>Apache-Axis Servlet</display-name>
<servlet-class>
org.apache.axis.transport.http.AxisServlet
</servlet-class>
</servlet>
<servlet>
<servlet-name>AdminServlet</servlet-name>
<display-name>Axis Admin Servlet</display-name>
<servlet-class>
org.apache.axis.transport.http.AdminServlet
</servlet-class>
<load-on-startup>100</load-on-startup>
</servlet>
<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>5001</param-value>
</init-param>
<load-on-startup>100</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/servlet/AxisServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>*.jws</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SOAPMonitorService</servlet-name>
<url-pattern>/SOAPMonitor</url-pattern>
</servlet-mapping>
<!-- uncomment this if you want the admin servlet -->
<!--
<servlet-mapping>
<servlet-name>AdminServlet</servlet-name>
<url-pattern>/servlet/AdminServlet</url-pattern>
</servlet-mapping>
-->
<session-config>
<!-- Default to 5 minute session timeouts -->
<session-timeout>5</session-timeout>
</session-config>
<!-- currently the W3C havent settled on a media type for WSDL;
http://www.w3.org/TR/2003/WD-wsdl12-20030303/#ietf-draft
for now we go with the basic 'it's XML' response -->
<mime-mapping>
<extension>wsdl</extension>
<mime-type>text/xml</mime-type>
</mime-mapping>
<mime-mapping>
<extension>xsd</extension>
<mime-type>text/xml</mime-type>
</mime-mapping>
[/code]
只要將上述的配置信息加入到你的web應用中就可以將Axis集成到你自己的項目中去了。還有一點需要說明,那就是除了這個配置以外還有將你的Axis.jar和其他必要的jar文件加入到你的WEB-INF/lib目錄中,以及發布你的的webservice的classes到WEB-INF/classes/中。
需要說明的有下面兩個配置:[code]<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping> [/code]
這個配置了指出所有webservice的訪問都是以 "web應用名/service/webservice名稱" 的形式來訪問的。你可以更改它的名字,但是請注意。這個需要與你的其他webservice配置文件匹配或者說同步。如WEB-INF下的server-config.wsdd文件中對webservice的配置。還有java2wsdl和wsdl2java工具生成的代碼中的配置。如:wsdl2java工具生成的類MobileBossServiceLocator 類中的這個URL的默認配置
private java.lang.String MobileBoss_address = "http://localhost:8080/axis/services/MobileBoss";
除了上面的那個配置以外還有一個比較重要的配置:
[code]<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>*.jws</url-pattern>
</servlet-mapping> [/code]
這個是通過jws既java源代碼的方式發布webservice。這種情況用的比較少。知道有這個配置才能使用jws就可以了。
當然了除了這兩個配置以外還有許多配置如timeout配置和監控器配置,這里就不多說了。我會在以后的高級應用中說明其他配置的功用。祝大家工作順利。that's all!
<listener-class>org.apache.axis.transport.http.AxisHTTPSessionListener</listener-class>
</listener>
<servlet>
<servlet-name>AxisServlet</servlet-name>
<display-name>Apache-Axis Servlet</display-name>
<servlet-class>
org.apache.axis.transport.http.AxisServlet
</servlet-class>
</servlet>
<servlet>
<servlet-name>AdminServlet</servlet-name>
<display-name>Axis Admin Servlet</display-name>
<servlet-class>
org.apache.axis.transport.http.AdminServlet
</servlet-class>
<load-on-startup>100</load-on-startup>
</servlet>
<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>5001</param-value>
</init-param>
<load-on-startup>100</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/servlet/AxisServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>*.jws</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SOAPMonitorService</servlet-name>
<url-pattern>/SOAPMonitor</url-pattern>
</servlet-mapping>
<!-- uncomment this if you want the admin servlet -->
<!--
<servlet-mapping>
<servlet-name>AdminServlet</servlet-name>
<url-pattern>/servlet/AdminServlet</url-pattern>
</servlet-mapping>
-->
<session-config>
<!-- Default to 5 minute session timeouts -->
<session-timeout>5</session-timeout>
</session-config>
<!-- currently the W3C havent settled on a media type for WSDL;
http://www.w3.org/TR/2003/WD-wsdl12-20030303/#ietf-draft
for now we go with the basic 'it's XML' response -->
<mime-mapping>
<extension>wsdl</extension>
<mime-type>text/xml</mime-type>
</mime-mapping>
<mime-mapping>
<extension>xsd</extension>
<mime-type>text/xml</mime-type>
</mime-mapping>
[/code]
只要將上述的配置信息加入到你的web應用中就可以將Axis集成到你自己的項目中去了。還有一點需要說明,那就是除了這個配置以外還有將你的Axis.jar和其他必要的jar文件加入到你的WEB-INF/lib目錄中,以及發布你的的webservice的classes到WEB-INF/classes/中。
需要說明的有下面兩個配置:[code]<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping> [/code]
這個配置了指出所有webservice的訪問都是以 "web應用名/service/webservice名稱" 的形式來訪問的。你可以更改它的名字,但是請注意。這個需要與你的其他webservice配置文件匹配或者說同步。如WEB-INF下的server-config.wsdd文件中對webservice的配置。還有java2wsdl和wsdl2java工具生成的代碼中的配置。如:wsdl2java工具生成的類MobileBossServiceLocator 類中的這個URL的默認配置
private java.lang.String MobileBoss_address = "http://localhost:8080/axis/services/MobileBoss";
除了上面的那個配置以外還有一個比較重要的配置:
[code]<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>*.jws</url-pattern>
</servlet-mapping> [/code]
這個是通過jws既java源代碼的方式發布webservice。這種情況用的比較少。知道有這個配置才能使用jws就可以了。
當然了除了這兩個配置以外還有許多配置如timeout配置和監控器配置,這里就不多說了。我會在以后的高級應用中說明其他配置的功用。祝大家工作順利。that's all!
總結
以上是生活随笔為你收集整理的用Axis创建的Webservice的集成与发布的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: axis简介
- 下一篇: 给JSP页面加过滤器