无法将 SOAP Web 服务部署到 Tomcat 10

问题描述 投票:0回答:1

我正在尝试将一个非常简单的 SOAP Web 服务部署到 Tomcat 10(版本 10.1.7),但尽管进行了多次尝试,但到目前为止我还没有成功。

我怀疑我的部署描述符 sun-jaxws.xml 有问题,我想知道是否有人在 Tomcat 10.1 上成功部署了 JAX-WS 4.0 SOAP Web 服务。

非常感谢!

每次尝试部署时都会出现以下异常(服务名称为 SayHelloC):

05-Apr-2023 14:05:08.316 SEVERE [Catalina-utility-2] com.sun.xml.ws.transport.http.servlet.WSServletContextListener.parseAdaptersAndCreateDelegate WSSERVLET11:无法解析运行时描述符:无法从中检索服务名称一个界面。类 com.ccieurope.ee10.webservices.sayhello.SayHelloC com.sun.xml.ws.model.RuntimeModelerException:无法从接口检索 serviceName。类 com.ccieurope.ee10.webservices.sayhello.SayHelloC 在 com.sun.xml.ws.model.RuntimeModeler.getServiceName(RuntimeModeler.java:1472) 在 com.sun.xml.ws.server.EndpointFactory.getDefaultServiceName(EndpointFactory.java:551) 在 com.sun.xml.ws.server.EndpointFactory.getDefaultServiceName(EndpointFactory.java:533) 在 com.sun.xml.ws.transport.http.DeploymentDescriptorParser.parseAdapters(DeploymentDescriptorParser.java:239) 在 com.sun.xml.ws.transport.http.DeploymentDescriptorParser.parse(DeploymentDescriptorParser.java:149) 在 com.sun.xml.ws.transport.http.servlet.WSServletContextListener.parseAdaptersAndCreateDelegate(WSServletContextListener.java:110) 在 com.sun.xml.ws.transport.http.servlet.WSServletContainerInitializer.onStartup(WSServletContainerInitializer.java:42) 在 org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4875) ...

部署描述符文件 sun-jaxws.xml 似乎有问题,因为 servlet 试图在部署时解析该文件。

不幸的是,我只能找到一些这个文件应该是什么样子的相当古老的例子。有没有人有一个与 JAX-WS 4.0 和 Tomcat 10.1 一起工作的小示例项目?

soap jax-ws tomcat10
1个回答
0
投票

原来问题出在部署描述符(sun-jaxws.xml)中指定的实现类com.ccieurope.ee10.webservices.sayhello.SayHelloC是一个接口类

更改描述符以指向实际的实现类使得在 Tomcat 10 上部署和使用 Web 服务成为可能。

© www.soinside.com 2019 - 2024. All rights reserved.