2011-09-15 56 views
3

我使用JBossWS開發了一個帶有唯一方法的java類並轉換爲Web服務(JBOSS)。我想獲取啓動請求的客戶端的IP地址。 (我不使用jsp)獲取JBoss Web服務中的IP地址

public String getMyIP() { 
    //get IP from client from current request 
    // return IP as String 
} 

謝謝!

+0

我想指出的是,這個問題是不同的: HTTP:/

@Resource WebServiceContext wsContext; 

然後在你的類使用此代碼/stackoverflow.com/questions/3346365/how-to-log-ip-address-on-jboss 我試過,但不知道如何獲取請求對象MDC.put(「RemoteAddress」,request.getRemoteAddr()) – Hectoret

回答

3

解決!

第一組此資源類中的:

SOAPMessageContext jaxwsContext = (SOAPMessageContext)wsContext.getMessageContext(); 
HttpServletRequest request = HttpServletRequest)jaxwsContext.get(SOAPMessageContext.SERVLET_REQUEST); 
String ipAddress = request.getRemoteAddr();