我正在尝试从另一个 bean 设置托管属性值。
面孔-config.xml
<managed-bean>
<managed-bean-name>beanA</managed-bean-name>
<managed-bean-class>com.project.BeanA</managed-bean-class>
<managed-bean-scope>view</managed-bean-scope>
<managed-property>
<property-name>value</property-name>
<value>#{sessionBean.currentValue}</value>
</managed-property>
</managed-bean>
<managed-bean>
<managed-bean-name>sessionBean</managed-bean-name>
<managed-bean-class>com.project.SessionBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
SessionBean.java
和BeanA.java
class SessionBean {
private Object currentValue; // getter+setter
}
class BeanA {
private Object value; // getter+setter
}
我知道站立的值sessionBean.currentValue
被倾倒到beanA.value
中,但是当设置任何值(来自beanA
)时beanA.setValue(x)
,sessionBean.currentValue
保持不变 - 这是预期的吗?如果是这样,如何启用这种双向性?