为什么我的 JAX-WS 服务找不到处理程序链文件?

时间:2021-07-02 18:26:56

标签: java soap jax-ws

我在端点实现中定义了一个 HandlerChain,如下所示:

@WebService(name = "MyPort", endpointInterface = "com.my.package.structure.here.gen.MyPort", targetNamespace = "http://mynamespace.com")
@HandlerChain(file="handler/handlers.xml")
public class MyPortImpl implements MyPort {

我的包结构如下:

com.my.package.structure.here
|-- MyPortImpl.java
|-- handler
|   |-- handlers.xml

此代码有效。 JAX-WS 找到了带有指向 Java 处理程序类的指针的处理程序 XML,并正确执行了代码。在某些时候,它只是停止工作。我现在看到:

com.sun.xml.internal.ws.util.UtilException: Could not find handler chain file handler/handlers.xml for class com.my.package.structure.here.MyPortImpl
        at com.sun.xml.internal.ws.util.HandlerAnnotationProcessor.getFileAsStream(HandlerAnnotationProcessor.java:215) ~[?:1.8.0_191]

为了调试,我恢复到处理程序代码的初始提交,我知道它正在工作。 完全相同的代码不再有效。可能导致此问题的原因是什么?

1 个答案:

答案 0 :(得分:0)

handlers.xml 没有被打包到我的 JAR 中。不清楚这最初是如何运作的。