ICEfaces
  1. ICEfaces
  2. ICE-2695

IllegalStateException: Component ID ... has already been found in the view in datapaginator

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Cannot Reproduce
    • Affects Version/s: 1.7DR#3
    • Fix Version/s: 1.7
    • Component/s: ICE-Components
    • Labels:
      None
    • Environment:
      Seam 2.0.1.CR2 + facelets + JBoss AS 4.2.2.GA
    • Assignee Priority:
      P2
    • Workaround Exists:
      Yes
    • Workaround Description:
      Don't use paginator.

      Description

      tab panel which does an <ui:include> to a page with a datatable and an associated datapaginator gave me grief by throwing exception when I pressed the refresh button in the browser on first entry to that tab. Tried giving manual IDs to all components:

      [code]
      <ice:dataPaginator
      for="xxx"
      id="pag"
      paginator="true">
      <f:facet name="first" id="firstfac">
      <ice:outputText value="first" id="firstout"/>
      </f:facet>
      <f:facet name="last" id="lastfac">
      <ice:outputText value="last" id="lastout"/>
      </f:facet>
      <f:facet name="next" id="nextfac">
      <ice:outputText value="next" id="nextout"/>
      </f:facet>
      <f:facet name="previous" id="prevfac">
      <ice:outputText value="previous" id="prevout"/>
      </f:facet>
      <f:facet name="fastforward" id="fastfwdfac">
      <ice:outputText value="fastforward" id="fastfwdout"/>
      </f:facet>
      <f:facet name="fastrewind" id="fastrevfac">
      <ice:outputText value="fastrewind" id="fastrevout"/>
      </f:facet>
      </ice:dataPaginator>
      [/code]

      and the interesting part of the stacktrace is

      [code]
      java.lang.IllegalStateException: Component ID form:tabset:0:pagfastr

                      +id: pag
                       type: com.icesoft.faces.component.datapaginator.DataPaginator@39390
                        +id: prevout
                         type: com.icesoft.faces.component.ext.HtmlOutputText@cce87c
                        +id: lastout
                         type: com.icesoft.faces.component.ext.HtmlOutputText@b34e55
                        +id: fastrevout
                         type: com.icesoft.faces.component.ext.HtmlOutputText@1dbcd95
                        +id: fastfwdout
                         type: com.icesoft.faces.component.ext.HtmlOutputText@196018a
                        +id: nextout
                         type: com.icesoft.faces.component.ext.HtmlOutputText@13f171e
                        +id: firstout
                         type: com.icesoft.faces.component.ext.HtmlOutputText@106f0c2
                        +id: pagfastr
                         type: com.icesoft.faces.component.ext.HtmlCommandLink@a85f71
                          +id: pagfastr_param
                           type: javax.faces.component.UIParameter@120db2
                        +id: pagnext
                         type: com.icesoft.faces.component.ext.HtmlCommandLink@1414822
                          +id: pagnext_param
                           type: javax.faces.component.UIParameter@e6cb7e
                        +id: paglast
                         type: com.icesoft.faces.component.ext.HtmlCommandLink@39e6b0
                          +id: paglast_param
                           type: javax.faces.component.UIParameter@1585e2a
                        +id: pagfirst
                         type: com.icesoft.faces.component.ext.HtmlCommandLink@8e55a3
                          +id: pagfirst_param
                           type: javax.faces.component.UIParameter@984ced
                        +id: pagfastr
                         type: com.icesoft.faces.component.ext.HtmlCommandLink@e2706d
                          +id: pagfastr_param
                           type: javax.faces.component.UIParameter@43180c
                        +id: pagprevious
                         type: com.icesoft.faces.component.ext.HtmlCommandLink@dfeb26
                          +id: pagprevious_param
                           type: javax.faces.component.UIParameter@c728f5
                        +id: pagnext
                         type: com.icesoft.faces.component.ext.HtmlCommandLink@15228b8
                          +id: pagnext_param
                           type: javax.faces.component.UIParameter@ef6882
                        +id: pagfastf
                         type: com.icesoft.faces.component.ext.HtmlCommandLink@1b644d3
                          +id: pagfastf_param
                           type: javax.faces.component.UIParameter@1609f7a
                        +id: paglast
                         type: com.icesoft.faces.component.ext.HtmlCommandLink@8618d5
                          +id: paglast_param
                           type: javax.faces.component.UIParameter@1c8734d

      [/code]

      which leads to the question: Is there a copypaste-bug in the ID generation code?

        Activity

          People

          • Assignee:
            Mark Collette
            Reporter:
            Nicklas Karlsson
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: