我有一个会话bean FooSessionBean
它有一个布尔属性:visible
。如何从请求bean更改会话bean的值?
我想从我的FooRequestBean中更改visible
属性的值。除了将FooRequestBean的范围更改为会话而不是请求(可以将FooSessionBean
注入我的FooRequestBean
)之外,是否有任何方法可以执行此操作?
在此先感谢。
PS:我使用的是JSF 1.2
我有一个会话bean FooSessionBean
它有一个布尔属性:visible
。如何从请求bean更改会话bean的值?
我想从我的FooRequestBean中更改visible
属性的值。除了将FooRequestBean的范围更改为会话而不是请求(可以将FooSessionBean
注入我的FooRequestBean
)之外,是否有任何方法可以执行此操作?
在此先感谢。
PS:我使用的是JSF 1.2
在FooRequestBean
创建FooSessionBean
财产(的getter/setter),并使用faces-config.xml
注入它:
<managed-bean>
<managed-bean-name>fooRequestBeanName</managed-bean-name>
<managed-bean-class>foo.FooRequestBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<managed-property>
<property-name>fooSessionBeanPropName</property-name>
<property-class>foo.FooSessionBean</property-class>
<value>#{sessionScope.fooSessionBeanName}</value>
</managed-property>
//etc
酷,它的工作原理:)...我认为我不能注入一个会话bean到一个请求但反之亦然... – 2011-05-17 16:13:18
@Christian - 你可以从广泛的范围注入到一个更窄的;你不能从狭窄的范围注入更广泛的范围。 – McDowell 2011-05-17 16:15:50
啊,那就是重点!谢谢! – 2011-05-17 16:21:15
*除了改变FooRequestBean的会话范围而不是请求(能够将FooSessionBean注入到我的FooRequestBean中)?*为什么您认为无法在请求作用域bean中注入会话作用域bean?它应该工作得很好。你遇到什么问题? – BalusC 2011-05-17 16:14:43