JSF是sessionScope中的managedBean字段

时间:2012-05-04 06:22:14

标签: java jsf managed-bean

我们可以把整个bean放在sessionScope中。

<managed-bean>
  <managed-bean-name>managedBeanList</managed-bean-name>
  <managed-bean-class>com.org.SomeMBean</managed-bean-class>
  <managed-bean-scope>session</managed-bean-scope>

但有什么我们只能在sessionScope中放置a field of that managed bean吗?

像...

public class SomeMBean{

public String mySessionScopeVariable; // Is there any way only this field will be in sessionscope continusly and not whole bean.

//getter setter of that variable.
}

2 个答案:

答案 0 :(得分:4)

不,这是不可能的。

您应该在单独的会话范围bean中分隔字段,并使用@ManagedProperty将其注入到较窄的范围bean中。

答案 1 :(得分:1)

我不知道怎么做。我不是JSF的专家,但是为了访问ManagedBean或任何bean中的属性,人们需要bean,因为如果没有bean,该属性就不存在。如果您认为托管bean膨胀会话大小,请将重变量设置为null以保存内存。但除此之外,我没有看到任何其他方式。