在JSF

时间:2015-05-22 11:40:40

标签: jsf jsf-2 primefaces

我正在尝试使用JSF和PrimeFaces创建Java项目。

我有两张桌子。 地址,数据库中的关系一对一

当我使用Netbeans构建项目时,它创建了两个分开的 create.xthml 文件。一个用于地址,一个用于人。我想在一个新的单个xhtml文件中混合

我的问题是..如何只用一个commanbutton actionlistener 保存两个bean的数据?

我有两个create.xhtml。

<p:commandButton actionListener="#{persona.create}" value="#{bundle.Save}" />
<p:commandButton actionListener="#{address.create}" value="#{bundle.Save}" />

我只需要一个按钮。

2 个答案:

答案 0 :(得分:0)

不确定,但你可以尝试

<p:commandButton action="#{address.create}" actionListener="#{persona.create}" value="#{bundle.Save}" />

答案 1 :(得分:0)

您可以在第一个bean中调用第二个bean并在其中调用create方法。

public class address {
    public void create() {
        Persona persona = (Persona) FacesContext.getCurrentInstance().getApplication().getExpressionFactory()
            .createValueExpression(FacesContext.getCurrentInstance().getELContext(), "#{Persona}", Persona.class)
            .getValue(FacesContext.getCurrentInstance().getELContext());
        persona.create();
}