2010-02-15 10 views
0

Je suis mise en œuvre de services Web Java 6 lumière de poids (embbeded) serveur HTTP jax-ws-web-services-without-java-ee-containers - à des fins de test -obtenir client IP pour webservice sur Java 6 embbeded serveur http

Je veux obtenir l'adresse IP du client pour chaque demande.

J'ai essayé de déclarer le contexte de service Web dans ma classe de service Web:

@Resource 
WebServiceContext wsContext; 

utiliser ensuite son contexte de message dans la méthode Web:

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

mais, il me donne Null requête HTTP .

J'ai utilisé la même manière mais avec SOAP Handler, mais le même problème: ((

est-il un moyen de le faire, s'il vous plaît ??

merci à l'avance ,,,

Répondre

0

J'ai utilisé la même idée, mais avec peu de changement:

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

,,, merci