【发布时间】:2012-11-16 03:26:33
【问题描述】:
在我试图找出这个问题中所述问题的原因时:JSF2 slow page loading,我想为我使用的用户会话过滤器计时。我创建了一个计时器,它是一个 ApplicationScoped bean。
我的问题是是否可以从过滤器中将此 bean 作为托管属性访问。在我的其他 bean 中,我可以这样做,尽管在过滤器中托管属性始终为空。
【问题讨论】:
-
当你说“过滤器”时,你真的是指
javax.servlet.Filter吗? (如果是这样,您应该使用[servlet-filters]标签,而不是[filter]!)在这种情况下,当前接受的答案毫无意义。 -
你是对的。我已将标签更改为正确的标签。关于答案,最后一个建议奏效了。不过,我仍然不确定 ManagedProperty 的机制在这种情况下是如何工作的。
-
FacesContext通常在 servlet 过滤器中根本不可用,所以它为什么对你有用是我无法理解的。托管属性仅在托管 bean 中起作用,但是 servlet 过滤器不是托管 bean。然后,您的问题基本上得到了与此问题相同的答案:stackoverflow.com/questions/2633112/… -
感谢您启发我以及链接中的示例。
标签: jsf-2 properties servlet-filters