Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > получить IP клиента в WebService


Автор: Andyb 19.12.2007, 12:59
Господа, скажите пожалуйста, можно ли получить IP клиента в WebService(JAX-WS) для последующей обработки его а блоке /**код*/?

Код

package wsdl;


import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;


@WebService()
public class MyWebService {

    @WebMethod(operationName = "GetInfo")
    public Info GetInfo(
            
            @WebParam(name = "Id") int Id,
            
            @WebParam(name = "systemId") int systemId) {

        Info i = null;
            /**код*/
                
        return i;
    }
}

Автор: Andyb 19.12.2007, 22:29
Сам отвечаю на свой же вопрос:
Код

package wsdl;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.annotation.Resource;
@WebService()
public class MyWebService {

    @Resource
    private WebServiceContext wsContext;

    @WebMethod(operationName = "GetInfo")
    public Info GetInfo(
            
            @WebParam(name = "Id") int Id,
            
            @WebParam(name = "systemId") int systemId) {
        Info i = null;
        MessageContext mc = wsContext.getMessageContext();
        HttpServletRequest request = ((javax.servlet.http.HttpServletRequest)mc.get(MessageContext.SERVLET_REQUEST));        
        String ip = request.getRemoteAddr();
            /**код*/
                
        return i;
    }
}

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)