JSF双向设置托管bean属性值作为另一个bean属性

时间:2014-09-18 14:27:59

标签: jsf managed-bean faces-config

我试图从另一个bean设置托管属性值。

faces-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.javaBeanA.java

class SessionBean {
    private Object currentValue; // getter+setter
}
class BeanA {
    private Object value; // getter+setter
}

我了解sessionBean.currentValue中的值会被转储到beanA.value,但在设置任何值(来自beanAbeanA.setValue(x)时,sessionBean.currentValue仍然存在没改变 - 这是预期的吗?如果是,如何启用此双向性?

0 个答案:

没有答案