4 Replies Latest reply on Jan 14, 2011 12:47 PM by jmanko

    subTable and a4j:support - AjaxUpdate error

    jmanko

      I'm getting an error when I try to use an a4j:support component within a rich:subTable.

       

      javax.el.ELException: AjaxUpdate component not found for id: s6

       

      Removing the Ajax support component eliminates the error.

       

      Below is the tag code.  Any suggestions?

       

      <h:form >

          <div align="center" >

              <h:panelGroup id="coTable">

                  <div align="center"><h:messages id="serverMessages" errorClass="errorMessage" /></div>

                  <h:dataTable value="#{bController.ciList}" var="c">

                      <h:column>

                          <r:dataTable id="ciTable" value="" style="width:100%">

                              <f:facet name="header">

                                  <r:columnGroup>

                                      <r:column style="width:250px">

                                          <h:outputText value="#{c.description}" escape="false" style="font-weight:bold;font-size:larger;color: blue;background-color: white; padding:1px 10px 1px 10px"/>

                                      </r:column>

                                      <r:column>

                                          <h:outputText value="L. Reserve" escape="false" style="font-size:larger"/>

                                      </r:column>

                                      <r:column>

                                          <h:outputText value="E. Reserve" escape="false"  style="font-size:larger"/>

                                      </r:column>

                                      <r:column>

                                  </r:columnGroup>

                              </f:facet>

                              <f:facet name="footer">

                                  <r:columnGroup id="footerGroup" style="text-align:right;background-color:#6388EB;">

                                      <r:column>

                                          <h:outputText value="Reserves" style="font-size:larger;color:white"/>

                                      </r:column>

                                      <r:column style="text-align:right">

                                          <h:inputText  id="lReserveFooter" maxlength="10" size="10" style="font-size:larger;text-align: right"

                                                        disabled="#{!c.authorized}" value="#{c.total.lReserve}">

                                              <f:converter converterId="javax.faces.BigDecimal" />

                                              <f:convertNumber pattern="###,###,##0.00"/>

                                              <a:support id="s1" event="onchange" reRender="coTable"   action="#{c.adjustAdjustmentL}"/>

                                          </h:inputText>

                                      </r:column>

                                      <r:column style="text-align:right">

                                          <h:inputText id="eReserveFooter" maxlength="10" size="10" style="font-size:larger;text-align: right"

                                                       disabled="#{!c.authorized}" value="#{c.total.eReserve}" >

                                              <f:converter converterId="javax.faces.BigDecimal" />

                                              <f:convertNumber pattern="###,###,##0.00"/>

                                              <a:support id="s3" event="onchange" reRender="coTable"  action="#{c.adjustAdjustmentE}"/>

                                          </h:inputText>

                                      </r:column>

                                  </r:columnGroup>

                              </f:facet>

                              <r:columnGroup style="text-align: right">

                                  <r:column style="text-align:right">

                                      <h:outputText value="Current" style="font-size:larger"/>

                                  </r:column>

                                  <r:column style="text-align:right">

                                      <h:outputText value="#{c.lReserve}" style="font-size:larger">

                                          <f:convertNumber pattern="###,###,##0.00"/>

                                      </h:outputText>

                                  </r:column>

                                  <r:column style="text-align:right">

                                      <h:outputText value="#{c.eReserve}" style="font-size:larger">

                                          <f:convertNumber pattern="###,###,##0.00"/>

                                      </h:outputText>

                                  </r:column>

                              </r:columnGroup>

                              <r:subTable id="cSubTable"  value="#{bController.pending}" var="pending" rowClasses="p-row" rows="#{bController.rowCount}"

                                          onRowMouseOver="document.body.style.cursor='pointer'" onRowMouseOut="document.body.style.cursor='auto'">

                                  <a:support id="s6" event="onRowClick" action="#{bController.showpDetails}" reRender="pDetailModal"

                                             oncomplete="Richfaces.showModalPanel('pDetailModal')"

                                             ajaxSingle="true"/>

                                  <r:columnGroup style="text-align:right;">

                                      <r:column style="text-align:right">

                                          <h:outputText value="#{pending.payee}" style="color:red;"/>

                                      </r:column>

                                      <r:column style="text-align:right">

                                          <h:outputText value="#{pending.pAmount}" rendered="#{pending.l}" style="color:red;">

                                              <f:convertNumber pattern="###,###,##0.00"/>

                                          </h:outputText>

                                      </r:column>

                                      <r:column style="text-align:right">

                                          <h:outputText value="#{pending.pAmount}" rendered="#{!pending.l}" style="color:red;">

                                              <f:convertNumber pattern="###,###,##0.00"/>

                                          </h:outputText>

                                      </r:column>

                                  </r:columnGroup>

                              </r:subTable>

                              <r:columnGroup id="AdjustmentGroup" style="text-align: right" >

                                  <r:column style="text-align:right">

                                      <h:outputText value="Adjustments" style="font-size:larger"/>

                                  </r:column>

                                  <r:column style="text-align:right">

                                      <h:inputText id="adjust1" value="#{c.adjustment.lReserve}" style="font-size:larger;text-align: right" maxlength="10"

                                                   size="10" disabled="#{!c.authorized}" immediate="true">

                                          <f:converter converterId="javax.faces.BigDecimal" />

                                          <f:convertNumber pattern="###,###,##0.00"/>

                                          <a:support id="s7" event="onchange" reRender="coTable"  action="#{c.adjustclReserves}"/>

                                      </h:inputText>

                                  </r:column>

                                  <r:column style="text-align:right">

                                      <h:inputText id="adjust3" value="#{c.adjustment.eReserve}" style="font-size:larger;text-align: right" maxlength="10" size="10"

                                                   disabled="#{!c.authorized}">

                                          <f:converter converterId="javax.faces.BigDecimal" />

                                          <f:convertNumber pattern="###,###,##0.00"/>

                                          <a:support id="s9" event="onchange" reRender="coTable"  action="#{c.adjustceReserves}"/>

                                      </h:inputText>

                                  </r:column>

                              </r:columnGroup>

                          </r:dataTable>

                          <r:modalPanel autosized="true" id="pDetailModal">

                              <f:facet name="header">

                                  <h:panelGroup>

                                      <h:outputText value="p Detail"/>

                                  </h:panelGroup>

                              </f:facet>

                              <f:facet name="controls">

                                  <h:panelGroup>

                                      <h:outputLabel value="Close X"   id="hidelink"/>

                                      <r:componentControl  id="hidelinkControl" for="pDetailModal" attachTo="hidelink" operation="hide"  event="onclick" />

                                  </h:panelGroup>

                              </f:facet>

                              <jsp:include page="/WEB-INF/include/pDetail.jsp"/>

                          </r:modalPanel>

                      </h:column>

                  </h:dataTable>

              </h:panelGroup>

              <r:spacer height="10px"/>

              <a:commandButton id="addc" value="Add c" onclick="Richfaces.showModalPanel('cSelectModal')" />

          </div>

      </h:form>