我正在尝试使用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}" />
我只需要一个按钮。
答案 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();
}