0

我们可以将整个 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>

但是有什么像我们只能放在a field of that managed beansessionScope 中的吗?

像...

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.
}
4

2 回答 2

4

不,这是不可能的。

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

于 2012-05-04T06:46:57.657 回答
1

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

于 2012-05-04T06:40:03.423 回答