I want to submit multiple forms with one submit button. I have multiple forms because each p:fileUpload needs an own form (when in advanced mode).
Here's the code for my submit button:
<h:form id="form1">...</h:form>
<h:form id="form2">...</h:form>
<h:form>
<p:commandButton value="Save" widgetVar="saveButtonBottom"
action="#{bean.submit}" ajax="false"
process=":form1,:form2,@this" />
</h:form>
It does call bean.submit(), but it does not process the other forms. Maybe my understanding of processing is wrong, but I thought if I put a form into "process", then it will be submitted.
Any idea how to make it work?
That's the limitation of HTML. Only the input data containing within the current form (wherein the command is been invoked) will be sent to the server side. As to the process
attribute, that only identifies which part(s) of that submitted data must be processed by JSF after they have arrived.
Any idea how to make it work?
Put all related data in the same form. Use if necessary just a single <p:fileUpload>
with multiple file selection support.
Place this inside form2:
<p:remoteCommand name="sendAjaxicalPGfilter"
update="form2:minMaxTable"
action="#{OptimizationSettingsBean.handleProductGroupChange}" />
call this on form1 command button
<p:commandButton value="Done"
oncomplete="selectedSettingDlg.hide();" onstart="sendAjaxicalPGfilter();"
ajax="true" action="#{CreateSourcingPlanBean.dummy}"
update=":form1:assignmentList" >
</p:commandButton>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With