我在GWT RPC Servlet中有一个登录方法,它从会话上下文中获取用户,因此确定用户是否登录。我想将此方法移植到请求工厂方法(获取代理实体而不是DTO)。
但我可以在哪里放置它?我无法将其放在实体中,因为我没有会话上下文。什么是正确的方法?
我的RPC方法目前看起来像这样:
@Override
public UserDTO isLoggedIn() {
// TODO Auto-generated method stub
HttpSession session = getThreadLocalRequest().getSession();
String userName = (String)session.getAttribute("userName");
if(userName !=null){
return new UserDTO(userName);
}
return null;
}
答案 0 :(得分:2)
RequestFactory还提供了访问请求和servlet上下文的方法
HttpSession session = com.google.web.bindery.requestfactory.server.RequestFactoryServlet.getThreadLocalRequest().getSession();
可在此处找到文档: