@SessionScoped不起作用。 Jersey + Guice + GAE + Java

时间:2016-03-24 14:30:35

标签: java google-app-engine jersey guice session-scope

我有泽西(1.17)+ Guice(3.0)+ GAE(1.9.24)Java应用程序。并且@SessionScoped注释不起作用。

我有

@SessionScoped
public class SessionService implements Serializable {
  private String login = null;
  public void setLogin(String login) {this.login=login;}
  public String getLogin() {return this.login;}
}

在控制器中,SessionService注入为@Inject SessionService sessionService;

appengine-web.xml<sessions-enabled>true</sessions-enabled>

允许发帖

在本地开发服务器上,当我在2次连续调用中调用setLogin(XX)getLogin时(从同一浏览器窗口访问2次页面),我按预期得到login=XX

在GAE上部署时,它会在浏览器中同一窗口的每次访问时创建新的SessionService实例,从而返回login=null。因此,它不会在会话中保留登录信息,并且行为不像@SessionScoped所期望的那样。

为什么不起作用?有没有办法让它发挥作用?

0 个答案:

没有答案