在Tomcat上使用OpenEJB部署Web服务

3
我需要在安装了OpenEJB的Tomcat上部署Web服务。我使用JAX-WS编译了一个简单的Hello服务,只打印“Hello”,并尝试将其部署到Tomcat上,但是在部署时出现错误: ERROR - Error deploying CXF webservice for servlet helloservice.endpoint.Hello java.lang.IllegalArgumentException: Could not find servlet helloservice in web application context /helloservice 请帮忙看看哪里做错了。 Tomcat + OpenEJB是否足以进行Web服务部署?
谢谢。
2个回答

3

请修改答案,因为提供的链接已经失效。 - AppsWise

2

请问这里做错了什么。 Tomcat + OpenEJB 对于 Web 服务部署是否足够?

一个 Servlet/JSP 引擎对于 Web 开发足够了,不需要使用 OpenEJB。

"Service" 是一个具有多重含义的术语。你是指 "SOAP Web 服务" 吗?还是 "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服务,需要在servlet元素中使用<servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>,并在servlet-mapping元素中使用<url-pattern>/helloservice</url-pattern>。还需要添加包含以下内容的sun-jaxws.xml:<endpoint name='helloservice' implementation='helloservice.endpoint.Hello' url-pattern='/helloservice' />其中helloservice.endpoint.Hello是“helloservice”Web服务的实现。 - kostya

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接