java webservice中怎么获得request

2025-04-26 00:50:44
推荐回答(3个)
回答1:

java webservice中通过注入WebServiceContext ,获取request、session等
代码如下:

@Resource
private WebServiceContext webServiceContext;

public String getLoginUser() {
HttpServletRequest request =
(HttpServletRequest) webServiceContext.getMessageContext().get(MessageContext.SERVLET_REQUEST);
HttpSession session = request.getSession();
return session.getAttribute("loginUser").toString();
}

回答2:

java webservice中通过注入WebServiceContext ,获取request、session等
代码如下:

@Resource
private WebServiceContext webServiceContext;

public String getLoginUser() {
HttpServletRequest request =
(HttpServletRequest) webServiceContext.getMessageContext().get(MessageContext.SERVLET_REQUEST);
HttpSession session = request.getSession();
return session.getAttribute("loginUser").toString();

回答3:

之前在BLL中写了一个方法,形如:

C# code?
public static void SomeMethod()
{
    //......
    HttpRequest req = HttpContext.Current.Request;
    //......
}

   


这样req就能获取到当前网站上下文的请求,现在需要把这个SomeMethod方法移到WebService里面去,这样一来,req获取的就是WebService上的HttpRequest,而不是我调用这个方法的网站的HttpRequest,有什么方法能够获取到调用这个方法的网站的HttpRequest吗?我想通过把HttpRequest作为参数传入SomaMethod,但HttpRequest是不能序列化的,希望大家能提供好的方法。