解决CXF获取客户端IP(WebServiceContext为null问题)
2014-01-11 16:10
603 查看
网络上很多文章都是这样配的:
@Resource
private WebServiceContext wscontext;
public String getIP(){
MessageContext ctx = wscontext.getMessageContext();
HttpServletRequest request = (HttpServletRequest)ctx.ge(AbstractHTTPDestination.HTTP_REQUEST);
return request.getRemoteAddr();
}
但是在我测试的过程中,发现如果把这段代码写在aop切点中,wscontext就是null,如果写在普通的实现类,就可以正常获取。其实很多帖子也说到null的问题,但最后都没解决。
现在在这里发现另一种方法,经测试完全有效:
Message message = PhaseInterceptorChain.getCurrentMessage();
HttpServletRequest httprequest = (HttpServletRequest)message.get(AbstractHTTPDestination.HTTP_REQUEST);
return httprequest.getRemoteAddr();
英文 http://www.javatips.net/blog/2012/03/getting-ip-address-using-cxf
@Resource
private WebServiceContext wscontext;
public String getIP(){
MessageContext ctx = wscontext.getMessageContext();
HttpServletRequest request = (HttpServletRequest)ctx.ge(AbstractHTTPDestination.HTTP_REQUEST);
return request.getRemoteAddr();
}
但是在我测试的过程中,发现如果把这段代码写在aop切点中,wscontext就是null,如果写在普通的实现类,就可以正常获取。其实很多帖子也说到null的问题,但最后都没解决。
现在在这里发现另一种方法,经测试完全有效:
Message message = PhaseInterceptorChain.getCurrentMessage();
HttpServletRequest httprequest = (HttpServletRequest)message.get(AbstractHTTPDestination.HTTP_REQUEST);
return httprequest.getRemoteAddr();
英文 http://www.javatips.net/blog/2012/03/getting-ip-address-using-cxf
相关文章推荐
- CXF获取客户端IP(解决WebServiceContext为null问题)
- CXF获取客户端IP(解决WebServiceContext为null问题)
- CXF获取客户端IP(解决WebServiceContext为null问题)
- axis 客户端调用CXF的webservice 解决参数传递不过去的问题
- JAVA CXF、XFIRE、AXIS webservice获取客户端IP
- cxf_webservice 获取客户端mac和ip
- 解决webservice用Ajax(jquery)传递客户端请求时ip跨域问题(异步域请求)
- Java获取客户端IP(解决苹果和安卓版的微信客户端IP问题)
- 解决haproxy代理nginx获取客户端真实ip问题
- ViewPager如何获取当前的子view( 解决getChildAt(position) 为null的问题)
- 安卓手机wifi 无法获取ip问题解决
- Nginx反向代理导致PHP获取不到正确的HTTP_HOST,SERVER_NAME,客户端IP的解决方法
- Linux CentOS设置静态获取ip,解决无法上网问题
- WebService获取服务端硬件信息和客户端IP,MAC,浏览器信息
- cxf获取客户端Ip
- webservice cxf客户端调用问题
- AXIS1客户端调用CXF服务接口-代码展示和问题解决
- Asp.net获取客户端IP常见代码存在的伪造IP问题探讨
- 树莓派(Debian)系统设置了静态IP之后还会获取动态IP的问题解决(scope global secondary eth0)