I am trying to create a dynamic form with nested models in separate panels/tabs. When I am submitting the parent form the nested forms are not submitted.
Code: Select all
<pe:dynaForm id="dynaForm" value="#{dynaFormController.parentModel}"
var="model">
<pe:dynaFormControl type="nestedModel">
<p:panel header="test" toggleable="true">
<pe:dynaForm value="#{model}" var="data">
<pe:dynaFormControl type="input" for="txt">
<p:inputText value="#{data.value}" required="#{data.required}" />
</pe:dynaFormControl>
<pe:dynaFormControl type="select">
<p:selectOneMenu value="#{data.value}">
<f:selectItems value="#{data.values}" />
</p:selectOneMenu>
</pe:dynaFormControl>
<pe:dynaFormControl type="booleanchoice">
<p:selectBooleanCheckbox value="#{data.value}" />
</pe:dynaFormControl>
</pe:dynaForm>
</p:panel>
</pe:dynaFormControl>
<f:facet name="buttonBar">
<p:commandButton process="dynaForm" value="Submit"
actionListener="#{dynaFormController.submitForm()}"></p:commandButton>
</f:facet>
</pe:dynaForm>
Code: Select all
parentModel = new DynaFormModel();
DynaFormRow fprow = parentModel.createRegularRow();
DynaFormModel nestedModel = new DynaFormModel();
DynaFormRow nestedRow1 = nestedModel.createRegularRow();
//first is a testobject created earlier
nestedRow1.addLabel("Name: ");
nestedRow1.addControl(first.getName(), "input");
nestedRow1.addLabel("Sirname: ");
nestedRow1.addControl(first.getSirname(), "input");
nestedRow1.addLabel("bool: ");
nestedRow1.addControl(first.getBool(), "booleanchoice");
fprow.addControl(nestedModel, "nestedModel");
Thank you in advance
Using:
Code: Select all
<dependency>
<groupId>org.primefaces</groupId>
<artifactId>primefaces</artifactId>
<version>6.0</version>
</dependency>
<dependency>
<groupId>org.primefaces.extensions</groupId>
<artifactId>primefaces-extensions</artifactId>
<version>6.0.0</version>
</dependency>