Shikha Dhawan
Shikha Dhawan

Reputation: 1424

Updates not reflected back on form submission

I am using primefaces.

In the java side, I have a modelView. ModelView has a list of modules. Each module has a list of variables.

. . .

       <h:form id="DynamicWebPageForm">
          <p:growl id="msgs" showDetail="true" />
          <h3>Dynamic Loading with Accordion Panel</h3>

          <p:outputLabel for="selectModule" value="Select Module: " />
          <p:selectOneMenu id="selectModule" value="#{modelView.selectModel}">
                 <p:ajax listener="#{modelView.onModelChange}" update="modulesAP" />
                 <f:selectItems value="#{modelView.modelselectItems}" />
          </p:selectOneMenu>

          <p:accordionPanel id="modulesAP" multiple="true" value="#{modelView.modules}" var="v1">
                 <p:tab id = "modulesTab" title="#{v1.name}: Rating - #{v1.rating}">
                       <p:dataTable styleClass="borderless" value="#{v1.moduleVariables}" var="c1">
                              <p:column>
                                     <p:row>
                                            <p:panelGrid columns="2" styleClass="borderlessPanelGrid">
                                                   <h:outputLabel styles="50%" value="#{c1.name}" />
                                                   <p:inputText styles="50%" value="#{c1.value}" />
                                            </p:panelGrid>
                                     </p:row>
                              </p:column>
                       </p:dataTable>
                       <p:commandButton value="Submit" update=":DynamicWebPageForm:msgs modulesTab modulesAP" actionListener="#{modelView.saveData}" process = ":DynamicWebPageForm" />
                 </p:tab>
          </p:accordionPanel>
   </h:form>

Any update in the inputText is not getting reflected back on form submission. What could be the issue?

Upvotes: 0

Views: 45

Answers (1)

kolossus
kolossus

Reputation: 20691

Set cache="false" (and maybe dynamic="true") on your <p:accordionaPanel/>

The accordionPanel defaults to cache="true" (can't understand why), which would explain why you're seeing stale values

Upvotes: 1

Related Questions