全部
我通过参考 http://cxf.apache.org/docs/simple-frontend.html的官方文档,使用 CXF Simple Frontend 创建了一个简单的服务
我只是想知道如何在上面链接的示例中的服务实现类 HelloWorldImpl 的方法中访问 HttpServletRequest。
任何帮助,将不胜感激。
最好的祝福
全部
我通过参考 http://cxf.apache.org/docs/simple-frontend.html的官方文档,使用 CXF Simple Frontend 创建了一个简单的服务
我只是想知道如何在上面链接的示例中的服务实现类 HelloWorldImpl 的方法中访问 HttpServletRequest。
任何帮助,将不胜感激。
最好的祝福
我想,您可以尝试以下方法:
PhaseInterceptorChain.getCurrentMessage().get("...");
要找到包含请求的确切密钥,请使用 - PhaseInterceptorChain.getCurrentMessage().keySet();
。它应该包含类似 Http Request 的东西。
希望这可以帮助。
干杯!
您可以使用:org.apache.cxf.jaxrs.ext.MessageContext
class 来检索HttpServletRequest
. 在您的实现中添加:
@Context
private MessageContext context;
HttpServletRequest request = context.getHttpServletRequest();
你会得到请求。
@Resource
WebServiceContext wsContext;
@Context
private HttpServletRequest request;
private HttpServletRequest getRequest() {
MessageContext mc = wsContext.getMessageContext();
HttpServletRequest req;
if (mc != null) {
req = (HttpServletRequest) mc.get(MessageContext.SERVLET_REQUEST);
} else {
req = request;
}
return req;
}