0 Replies Latest reply on May 5, 2008 4:40 PM by Ze Manel

    Seam scope problem

    Ze Manel Newbie

      Hi,


      I'm using:
      jboss-seam-2.0.1.GA
      ICEfaces-1.7.0-bin
      jboss-4.2.2.GA


      I think this is seam scope related problem:
      I created a dataTable on backbean and it works fine, then i created an expandable table on the xhtml page and it works fine, but if i use both at the same time on the same page, they are both rendered but when i try to expand/collapse the expandable table nothing happens unless an exception saying:



      09:24:39,878 WARN  [lifecycle] executePhase(RESTORE_VIEW 1,com.icesoft.faces.context.BridgeFacesCont
      ext@127f2bb) threw exception
      javax.el.PropertyNotFoundException: /home.xhtml @25,62 binding="#{tableManager.dataTableContas}": Target Unreachable, identifier 'tableManager' resolved to null
           at com.sun.facelets.el.TagValueExpression.setValue(TagValueExpression.java:95)
           at com.sun.faces.lifecycle.RestoreViewPhase.doPerComponentActions(RestoreViewPhase.java:244)
           at com.sun.faces.lifecycle.RestoreViewPhase.doPerComponentActions(RestoreViewPhase.java:249)
      (...)

           



      This is my table created on the tableManager backbean:
                     
      <ice:panelGroup>
           <ice:dataTable binding="#{tableManager.dataTableContas}">
           </ice:dataTable>
      </ice:panelGroup>

           



      And this is my table created directly on the .xhtml page:


      <ice:panelGroup>
                          <ice:dataTable id="dataTableTest"
                               value="#{salesRecordsManager.salesGroupRecordBeans}"
                               var="salesRecord" columnClasses="expandableTableColumn">

                               <f:facet name="header">
                                    <ice:columnGroup>
                                         <ice:headerRow>
                                              <ice:column rowspan="3"></ice:column>
                                              <ice:column rowspan="3">teste </ice:column>
                                         </ice:headerRow>
                                    </ice:columnGroup>
                               </f:facet>

                               <!-- contract/expand column -->
                               <ice:column>
                                    <ice:panelGroup styleClass="#{salesRecord.indentStyleClass}">
                                         <!-- Render the expand/contract if there is an image -->
                                         <ice:commandLink id="expandCmdLnk"
                                              actionListener="#{salesRecord.toggleSubGroupAction}">
                                              <ice:graphicImage id="expandContractImage"
                                                   value="#{salesRecord.expandContractImage}"
                                                   style="border: 0px solid;" />
                                         </ice:commandLink>
                                    </ice:panelGroup>
                               </ice:column>
                               <!-- Description column -->
                               <ice:column>
                                    <ice:panelGroup style="width: 60px;">
                                         <ice:outputText id="description"
                                              value="#{salesRecord.description}" />

                                    </ice:panelGroup>
                               </ice:column>

                          </ice:dataTable>
                     </ice:panelGroup>

           





      I saw some other posts related to binding so i tried to change the scope from CONVERSATION to SESSION/EVENT and it gives me an different exception:



      10:40:52,792 WARN  [lifecycle] executePhase(RESTORE_VIEW 1,com.icesoft.faces.context.BridgeFacesCont
      ext@eb49a5) threw exception
      javax.el.PropertyNotFoundException: /home.xhtml @21,85 binding="#{tableManager.dataTableHeader}": Property 'dataTableHeader' not writable on type com.icesoft.faces.component.ext.HtmlDataTable
           at com.sun.facelets.el.TagValueExpression.setValue(TagValueExpression.java:95)
           at com.sun.faces.lifecycle.RestoreViewPhase.doPerComponentActions(RestoreViewPhase.java:244)
           




      Any idea how to solve this? thanks for any help/tips



      Best Regards