Java JAX-WS Web服务中的Apache CXF拦截器未调用

Java JAX-WS Web服务中的Apache CXF拦截器未调用,java,web-services,soap,jax-ws,interceptor,Java,Web Services,Soap,Jax Ws,Interceptor,我希望在调用Web服务时在Web服务中获取SOAP传入请求主体。为此,我创建了一个JAX-WSWeb服务,并使用注释创建了一个ApacheCXF拦截器,但当我使用SOAPUI调用web服务时,我的web服务直接运行,而不是进入拦截器。代码应该是 @org.apache.cxf.interceptor.InInterceptors (interceptors = {"./BasicAuthAuthorizationInterceptor" }) @WebService(targ

我希望在调用Web服务时在Web服务中获取SOAP传入请求主体。为此,我创建了一个JAX-WSWeb服务,并使用注释创建了一个ApacheCXF拦截器,但当我使用SOAPUI调用web服务时,我的web服务直接运行,而不是进入拦截器。代码应该是

@org.apache.cxf.interceptor.InInterceptors (interceptors =          {"./BasicAuthAuthorizationInterceptor" })

@WebService(targetNamespace = "http://com.services", serviceName =  "MyService", portName = "myPort")
public class MyServiceJax
{
}
拦截器的代码是

public class BasicAuthAuthorizationInterceptor extends
AbstractSoapInterceptor {

public BasicAuthAuthorizationInterceptor() {
super(Phase.RECEIVE);
}
public void handleMessage(SoapMessage message) throws Fault {

List <Header> list = message.getHeaders();
for (Header header : list) {
System.out.println(header.getName() + " = " + header.toString());
}
}
}
是否有其他配置需要添加?我没有创建想要使用注释的CXF.XML文件

问候,


Aiden

尝试在@org.apache.cxf.interceptors中提供BasicAuthorizationInterceptor类的完整包名,而不是。/?将尝试…谢谢…但是除了添加@annotation并将cxf jar放入构建路径之外,没有其他配置条目?否。对于编程配置,我相信这就足够了。如果这适用于完整的包名,请尝试。如果是的话,我会把它贴出来作为你的答案。谢谢!尝试过,但它不会选择:我相信原因是我的web服务不是基于CXF的web服务,而是简单的jax ws,我认为要让它工作,必须使用CXF发布服务,例如使用web.xml,并在这里放入CXF servlet。我想我应该把这个问题标为回答了。它从来都不是基于cxf的?当然不会工作,那么:D拦截器是注册为CXF:bus拦截器的CXF拦截器:好的。