CXF獲取客戶端IP(解決WebServiceContext爲null問題)

原文鏈接:https://blog.csdn.net/wwwyuanliang10000/article/details/21290027

CXF獲取客戶端IP(解決WebServiceContext爲null問題)

原文地址: https://blog.csdn.net/wwwyuanliang10000/article/details/21290027

 

 

網絡上很多文章都是這樣配的:
 
@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();
————————————————
版權聲明:本文爲CSDN博主「AndyYuan10000」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/wwwyuanliang10000/article/details/21290027

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章