从cxf pojo服务获取http头的正确方法是什么?
我有以下代码,但不起作用:
ServerFactoryBean svrFactory = new ServerFactoryBean();
svrFactory.setServiceClass(TestService.class);
svrFactory.setAddress("http://localhost:8080/test");
svrFactory.getServiceFactory().setDataBinding(new AegisDatabinding());
svrFactory.create();
public class TestService {
protected javax.xml.ws.WebServiceContext wsContext;
public void someMethod() {
// the problem is that wsContext.getMessageContext() is null
}
}
谢谢!
最佳答案
您需要将@resource添加到wscontext变量中,并切换到使用jaxwsserverfactorybean。
或者,使用:
phaseInterceptorChain.GetCurrentMessage()
获取当前的cxf内部消息并从那里获取头。