получить IP-адрес клиента для веб-сервиса на http-сервере java 6 embbeded - PullRequest
0 голосов
/ 15 февраля 2010

Я реализую веб-сервис на облегченном (встроенном) HTTP-сервере java 6 jax-ws-web-services-without-java-ee-container - для целей тестирования -

Я хочу получить IP-адрес клиента для каждого запроса.

Я попытался объявить контекст веб-службы в своем классе веб-службы:

@Resource
WebServiceContext wsContext;

затем используйте его контекст сообщения в веб-методе:

MessageContext msgx = wsContext.getMessageContext();
HttpServletRequest request = (HttpServletRequest)msgx.get(MessageContext.SERVLET_REQUEST);
System.out.println(request.getRemoteAddr());   ---->>> NULLPointerException

но, это дает мне Нуль HTTP-запрос.

Я использовал тот же способ, но с SOAP Handler, но та же проблема: ((

Есть ли способ получить его, пожалуйста?

спасибо заранее ,,,

1 Ответ

0 голосов
/ 15 февраля 2010

Я использовал ту же идею, но с небольшими изменениями:

MessageContext msgx = wsContext.getMessageContext();
    HttpExchange exchange = (HttpExchange)msgx.get("com.sun.xml.internal.ws.http.exchange");
    System.out.println(exchange.getRemoteAddress().getAddress());

спасибо ,,,

...