1 Reply Latest reply on Nov 28, 2010 5:51 PM by Tim Evers

    Passing values from one model panel to another at oncomplete

    Ankita Singh Newbie

      Hi All,
             I am facing a problem at the time of rendering a list which is in a model panel.I have one model panel and at oncomplete of that model panel i am opening another model panel with a datagrid.But at the time of rendering the second model panel ,i am not getting that datagrid List.


      Code I have written for model panel is


      <a:outputPanel id="addCustomJobPanel">
      <rich:modalPanel id="addCustomJobMp" styleClass="modalPanel" top="10" keepVisualState="#{manageJobDone.showOverlay}" autosized="true" minWidth="600" minHeight="150" style="background-image: url('../img/overlayBg.png');background-repeat: repeat;background-color: transparent;" shadowDepth="#{messages.valShadowDepth}" headerClass="modalPanel-header" controlsClass="modalPanel-controls">
      <f:facet name="header">
      <h:outputText value="#{messages.lblAddEditCustomJob}" />
      </f:facet>
      <f:facet name="controls">
      <h:form>
      <a:commandLink action="#{manageJobDone.closeLayer}"oncomplete="Richfaces.hideModalPanel('addCustomJobMp')">
      <h:graphicImage value="/img/closeButton.png" alt="X" border="0" />
      </a:commandLink>
      </h:form>
      </f:facet>
      <s:div styleClass="modalPanel-panelGrid-container-div">
      <h:panelGrid styleClass="modalPanel-panelGrid">
      <a:outputPanel ajaxRendered="true">
      <h:message styleClass="message" for="addCustomJobPanel" />
      </a:outputPanel>
      <a:form id="addCustomJobForm">
      <h:panelGrid border="0" columnClasses="formLabel,formValue" rowClasses="formLabel">
      <s:decorate id="customJobTitleDecoration" template="../layout/edit.xhtml">
      <ui:define name="label">#{messages.lblJobDoneTitle}</ui:define><h:inputText id="jobtitle" value="#{customJob.strTitle}"required="true"                    requiredMessage="#{messages['message.required.customjob.title']}" />          </s:decorate><s:decorate id="machineryTypeDecoration"     template="../layout/edit.xhtml"><ui:define name="label">#{messages.lblMachinery}</ui:define>                              <h:selectOneMenu value="#{customJob.machinery}">          <s:selectItems value="#{manageJobDone.machineryRList}" var="m" label="#{m.strName}" noSelectionLabel="#{messages.defaultListItem}" />
      <s:convertEntity />
      </h:selectOneMenu>
      </s:decorate>
      <s:decorate id="customJobDescDecoration"
      template="../layout/edit.xhtml">
      <ui:define name="label">#{messages.lblCustumJobDesc}</ui:define>
      <h:inputTextarea id="customJobDesc" value="#{customJob.txtDescription}" required="true" rows="5" cols="36"
      requiredMessage="#{messages['message.required.customjob.desc']}" />
      </s:decorate></h:panelGrid>     <h:panelGrid columns="1" border="0" width="100%" columnClasses="formLabel,formValue" rowClasses="formLabel"><a:commandButton id="persistCustomJob"
      value="#{messages.lblPersistAttach}" reRender="addCustomJobPanel"
      action="#{manageJobDone.persistCustomJob}"
      onclick="this.disabled=true" style="margin:3px"
      oncomplete="Richfaces.showModalPanel('uploadImageMp'"
      rendered="#{customJob.icustomJobId == null}" />
      <a:commandButton id="updateCustomJob"
      value="#{messages.lblUpdateAttach}"
      reRender="addCustomJobPanel"
      action="#{manageJobDone.updateCustomJob}"
      onclick="this.disabled=true" style="margin:3px"
      oncomplete="Richfaces.showModalPanel('uploadImageMp',{list : #{manageJobDone.customJobImageList}})" rendered="#{customJob.icustomJobId != null}" >
      <a:actionparam name="jobDoneButton" value="attach"
      assignTo="#{manageJobDone.jobDoneButton}" />
      </a:commandButton>
      </h:panelGrid>
      </a:form>
      </h:panelGrid>
      </s:div>
      </rich:modalPanel>
      </a:outputPanel>



      And Code for second model panel is




      <rich:modalPanel id="uploadImageMp" styleClass="modalPanel" top="10"
                     keepVisualState="#{manageJobDone.showImageUpload}" autosized="true"
                     minWidth="600" minHeight="150"
                     style="background-image: url('../img/overlayBg.png');background-repeat: repeat;background-color: transparent;"
                     shadowDepth="#{messages.valShadowDepth}"
                     headerClass="modalPanel-header" controlsClass="modalPanel-controls">
      
                     <f:facet name="header">
                          <h:outputText value="#{messages.lblUploadFilesJobDone}" />
                     </f:facet>
      
                     <h:form>
                          <a:commandLink action="#{manageJobDone.closeLayer}"
                               oncomplete="Richfaces.hideModalPanel('uploadImageMp')">
                               <h:graphicImage value="/img/closeButton.png" alt="X" border="0" />
                          </a:commandLink>
                     </h:form>
      
                     <s:div styleClass="modalPanel-panelGrid-container-div">
                          <h:panelGrid styleClass="modalPanel-panelGrid">
      
                               <rich:dataTable id="jobDoneFilesUploadedList"
                                    value="#{jobDoneImageList}" var="jdi" styleClass="rich-dataTable"
                                    columnClasses="dataTableColumn" headerClass="dataTableHeader"
                                    rendered="#{jobDoneImageList.rowCount > 0}"
                                    style="border: none; background: none;">
                                    <rich:column style="width:70%;">
                                         <f:facet name="header">#{messages.lblFileNameJobDone}</f:facet>
                                                          #{jdi.strImageName}
                                           </rich:column>
      
                                    <rich:column style="width:30%;">
                                         <f:facet name="header">#{messages.lblJobDoneFileUploadedOn}</f:facet>
                                                                  #{jdi.dtCreated}                                        
                                                   </rich:column>
      
                                    <rich:column style="width: 100px;">
                                         <f:facet name="header">
                                              <h:outputText value="#{messages.lblAction}"
                                                   styleClass="dataTablePanelGrid" />
                                         </f:facet>
                                         <h:form>
                                              <a:commandLink action="#{manageJobDone.removeJobDoneFile(jdi)}"
                                                   reRender="removeJobDoneFilePanel"
                                                   oncomplete="this.disabled=false"
                                                   onmouseover="reloadHelp('#{messages.lblRemoveFile}');"
                                                   onmouseout="reloadHelp('#{messages.lblRemoveFile}');"
                                                   onclick="this.disabled=true" style="margin-right: 5px;"
                                                   ajaxSingle="true" ignoreDupResponses="true" requestDelay="1000"
                                                   eventsQueue="removeJobDoneFileQueue">
                                                   <h:graphicImage value="/img/edit.gif" border="0" />
                                                   <rich:toolTip followMouse="false" direction="top-right"
                                                        showDelay="0" styleClass="tooltip">
                                                         #{messages.lblRemoveFile}
                                                     </rich:toolTip>
                                              </a:commandLink>
                                         </h:form>
                                    </rich:column>
      
                               </rich:dataTable>
                               <rich:dataTable id="customJobFileUploadList"
                                    value="list" var="cjil"
                                    styleClass="rich-dataTable" columnClasses="dataTableColumn"
                                    headerClass="dataTableHeader"
                                    rendered="true"
                                    style="border:1px solid red; background: none;">
                                    <rich:column style="width:70%;">
                                         <f:facet name="header">#{messages.lblFileNameJobDone}</f:facet>
                                                          #{cjil.strImageName}
                                           </rich:column>
      
                                    <rich:column style="width:30%;">
                                         <f:facet name="header">#{messages.lblJobDoneFileUploadedOn}</f:facet>
                                                                  #{cjil.dtCreated}                                        
                                                   </rich:column>
      
                                    <rich:column style="width: 100px;">
                                         <f:facet name="header">
                                              <h:outputText value="#{messages.lblAction}"
                                                   styleClass="dataTablePanelGrid" />
                                         </f:facet>
                                         <h:form>
                                             <a:commandLink action="#{manageJobDone.removeCustomJobFile(cjil)}"
                                                   reRender="removeJobDoneFilePanel"
                                                   oncomplete="this.disabled=false"
                                                   onmouseover="reloadHelp('#{messages.lblRemoveFile}');"
                                                   onmouseout="reloadHelp('#{messages.lblRemoveFile}');"
                                                   onclick="this.disabled=true" style="margin-right: 5px;"
                                                   ajaxSingle="true" ignoreDupResponses="true" requestDelay="1000"
                                                   eventsQueue="removeJobDoneFileQueue">
                                                   <h:graphicImage value="/img/edit.gif" border="0" />
                                                   <rich:toolTip followMouse="false" direction="top-right"
                                                        showDelay="0" styleClass="tooltip">
                                                         #{messages.lblRemoveFile}
                                                     </rich:toolTip>
                                              </a:commandLink>
                                              <a:commandLink action="#{manageJobDone.viewCustomJobImage(cjil)}"
                                                   reRender="removeJobDoneFilePanel"
                                                   oncomplete="this.disabled=false"
                                                   onmouseover="reloadHelp('#{messages.lblRemoveFile}');"
                                                   onmouseout="reloadHelp('#{messages.lblRemoveFile}');"
                                                   onclick="this.disabled=true" style="margin-right: 5px;"
                                                   ajaxSingle="true" ignoreDupResponses="true" requestDelay="1000"
                                                   eventsQueue="removeJobDoneFileQueue">
                                                   <h:graphicImage value="/img/edit.gif" border="0" />
                                                   <rich:toolTip followMouse="false" direction="top-right"
                                                        showDelay="0" styleClass="tooltip">
                                                         #{messages.lblRemoveFile}
                                                     </rich:toolTip>
                                              </a:commandLink>
                                         </h:form>
                                    </rich:column>
      
                               </rich:dataTable>
      
      
                               <h:form id="uploadImagePanelForm" enctype="multipart/form-data">
      
                                    <h:panelGrid columns="2" columnClasses="name"
                                         styleClass="panelGrid" align="center" width="50%">
      
                                         <h:outputLabel for="name">
                                              <h:outputText value="#{messages.lblBrowseFileToUpload}" />
                                         </h:outputLabel>
      
                                         <s:fileUpload data="#{manageJobDone.fileData}"
                                              fileName="#{manageJobDone.fileName}" />
      
                                         <h:outputLabel for="name">
                                              <h:outputText value="#{messages.lblBrowseFileToUpload}" />
                                         </h:outputLabel>
      
                                         <s:fileUpload data="#{manageJobDone.fileData2}"
                                              fileName="#{manageJobDone.fileName2}" />
      
                                         <h:outputLabel for="name">
                                              <h:outputText value="#{messages.lblBrowseFileToUpload}" />
                                         </h:outputLabel>
      
                                         <s:fileUpload data="#{manageJobDone.fileData3}"
                                              fileName="#{manageJobDone.fileName3}" />
      
                                         <h:commandButton id="saveJobDoneImage"
                                              value="#{messages.btnSave}"
                                              action="#{manageJobDone.persistJobDoneImage}" />
      
                                    </h:panelGrid>
      
                               </h:form>
                          </h:panelGrid>
                     </s:div>
      
                </rich:modalPanel>
      



      But on display of second model panel i am not getting value from bean class.Please help if any one has any idea about this.



      Thanks in advance.