我已经使用Netbeans在计算机A上部署了一些Web服务,我试图在有人试图访问它们时记录时间和IP信息。 我尝试了以下代码段。
HttpServletRequest req = (HttpServletRequest)
mc.get(MessageContext.SERVLET_REQUEST);
System.out.println("Client IP = " + req.getRemoteAddr());
System.out.println(req.getRemoteHost());
但输出显示机器A的IP。
有什么建议吗?
答案 0 :(得分:0)
虽然这与您尝试过的类似,但它对我来说是一个SOAP请求。
@Resource
WebServiceContext wsContext;
HttpServletRequest request = (HttpServletRequest)wsContext.getMessageContext().get(SOAPMessageContext.SERVLET_REQUEST);
String remoteIp = request.getRemoteAddr();
String remoteUser = request.getRemoteUser();
String remoteHost = request.getRemoteHost();