2010-05-31 99 views
3

我需要在安裝了OpenEJB的Tomcat上部署Web服務。 我編譯了簡單的Hello服務,它只是用JAX-WS打印出「Hello」,並嘗試在tomcat上部署,但在部署時出現錯誤: 錯誤 - 爲servlet部署CXF webservice時出錯helloservice.endpoint.Hello java.lang.IllegalArgumentException:在web應用程序上下文中找不到servlet helloservice/helloservice使用OpenEJB在Tomcat上部署Web服務

請幫助在這裏做錯了什麼。 tomcat + openejb是否足夠用於Web服務部署?

謝謝。

回答

2

請幫助這裏做錯了什麼。 tomcat + openejb是否足夠用於 web服務部署?

servlet/JSP引擎對Web開發是足夠的。你不需要OpenEJB。

「服務」是一個加載的術語。你的意思是「SOAP網絡服務」?或者「EJB無狀態會話bean」?

檢查你的web.xml。聽起來你沒有聲明一個名爲helloservice的servlet。它應該是這樣的:

<servlet> 
    <servlet-name>helloservlet</servlet-name> 
    <servlet-class>com.your.package.HelloServlet</servlet-class> 
</servlet> 

<servlet-mapping> 
    <servlet-name>helloservlet</servlet-name> <!-- names must match --> 
    <url-pattern>*.html</url-pattern> 
</servlet-mapping> 
+1

感謝您的回答。我用它做了一些改變。 對於Web服務需要使用 com.sun.xml.ws.transport.http.servlet.WSServlet 在servlet元素和 /HelloService的 在servlet映射元素中。 還需要添加太陽jaxws.xml包含不便等: <端點名稱= 'HelloService的' \t \t實施= 'helloservice.endpoint.Hello' \t \t URL模式= '/ HelloService的'/> helloservice.endpoint.Hello是'helloservice'網絡服務的實現 – kostya 2010-06-22 14:56:37