This article describes how to get IP address of clients invoking the axis2 web services and jax-ws web services.
//JAX-WS
package vn.com.me.test;
import javax.annotation.Resource;
import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.servlet.http.HttpServletRequest;
import javax.xml.ws.WebServiceContext;
import javax.xml.ws.handler.MessageContext;
@WebService
public class WSTesting {
@Resource
WebServiceContext wsCtx;
@WebMethod
public String sayHello(){
MessageContext msgCtx = wsCtx.getMessageContext();
HttpServletRequest req = (HttpServletRequest) msgCtx.get(MessageContext.SERVLET_REQUEST);
return "Hello guest. Your ip is " + req.getRemoteAddr();
}
}
//Axis2
package vn.com.me.test;
import org.apache.axis2.context.MessageContext;
public class WSTesting {
public String sayHello(){
MessageContext context = MessageContext.getCurrentMessageContext();
String ipAddress = context.getProperty(MessageContext.REMOTE_ADDR).toString();
return "Hello guest. Your ip is " + ipAddress;
}
}
Không có nhận xét nào:
Đăng nhận xét