Dirección IP En WebService

De Dos Ideas.
Saltar a: navegación, buscar

Suele ser habitual realizar una auditoría sobre las invocaciones de nuestros webservices. Además de la operación, fecha y hora, petición y respuesta, una de las cosas más interesantes a guardar es la dirección IP del cliente. Este dato quizás no es tan trivial de obtener, hay que hacer uso del objeto MessageContext asociado al mensaje recibido.

Por lo que aquí os dejo el código:

MessageContext msgCtx = MessageContext.getCurrentMessageContext(); String remoteAddress = (String)msgCtx.getProperty("REMOTE_ADDR");

Otras cosas interesantes que se pueden obtener son los objetos ServletContext y HttpServletRequest:

ServletContext servletContext = (ServletContext)msgCtx.

   getProperty("transport.http.servletContext");

HttpServletRequest httpServletRequest = (HttpServletRequest)msgCtx.

   getProperty("transport.http.servletRequest");

Ver tambien