我正在开发一个在客户端使用GWT并在服务器端使用Java(tomcat7)的Web项目。
如果在浏览器上启用了cookie,一切正常。我可以毫无问题地使用会话。
如果在浏览器上禁用了cookie,则会话不起作用。
我想,这主要与GWT应用程序有关,它是一个网页应用程序,只通过ajax从服务器请求数据。
有没有办法让会话在这种情况下工作?
非常感谢帮助!
一切顺利, 托马斯
答案 0 :(得分:0)
如果您使用GWT RPC,则需要修改您的RPC网址以在jsessionid中进行刻录,如本forum post中所述。虽然我不确定论坛帖子中显示的行Cookies.getCookie("JSESSIONID")
是否适合您的情况。您可能需要解析location.href
答案 1 :(得分:0)
在服务器端,您可以按如下方式访问会话:
public class NameImpl extends RemoteServiceServlet implements NameService {
public void doSomething() throws IllegalArgumentException{
HttpSession hs = this.getThreadLocalRequest().getSession();
//Do whatever it is you want to do with this information.
}
}
不是100%确定是否是你所要求的,但这似乎是最合理的答案。