本文介绍了使用Guice将@SessionScoped值注入过滤器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在会话中拥有一个用户的类持有值

I have a class hold value of a user in session

 @SessionScoped
 class UserSession{}

现在我有一个LoginFilter来确保通过用户登录访问某些网址

Now I have a LoginFilter to ensure some url accessed with user login

class LoginFilter{
   @Inject UserSession userSession;
   ...
}

然后,当我尝试引导码头时,抛出了超出范围的异常.如何检查会话是否包含UserSession对象?我不知道UserSession类的属性名称.

Then Out of scope exception was thrown when I try to bootstrap jetty. How can I check if the session contains the UserSession object? I don't know the attribute name of UserSession class.

推荐答案

您可以注入Provider<UserSession>而不是普通的UserSession.

You can inject a Provider<UserSession> instead of a plain UserSession.

这篇关于使用Guice将@SessionScoped值注入过滤器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

06-25 11:18