ICEfaces
  1. ICEfaces
  2. ICE-4979

ArrayIndexOutOfBoundsException from TableRenderer.getWidthFromColumnWidthsArray

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.8.2-RC1
    • Fix Version/s: 1.8.2
    • Component/s: ICE-Components
    • Labels:
      None
    • Environment:
      build of ICEfaces from Tuesday, September 29

      Description

      After dropping the build of ICEfaces from Tuesday, September 29 into the ICEpack, noticed a regression in the expandableTable component:

      java.lang.ArrayIndexOutOfBoundsException: 1
              at com.icesoft.faces.component.ext.renderkit.TableRenderer.getWidthFromColumnWidthsArray(TableRenderer.java:1082)
              at com.icesoft.faces.component.ext.renderkit.TableRenderer.encodeChildren(TableRenderer.java:777)
              at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:837)
              at com.icesoft.faces.renderkit.dom_html_basic.DomBasicRenderer.encodeParentAndChildren(DomBasicRenderer.java:358)
              at com.icesoft.faces.renderkit.dom_html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:96)
              at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:837)
              at com.icesoft.faces.renderkit.dom_html_basic.DomBasicRenderer.encodeParentAndChildren(DomBasicRenderer.java:358)
              at com.icesoft.faces.renderkit.dom_html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:96)
              at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:837)
              at com.icesoft.faces.renderkit.dom_html_basic.DomBasicRenderer.encodeParentAndChildren(DomBasicRenderer.java:358)
              at com.icesoft.faces.renderkit.dom_html_basic.DomBasicRenderer.encodeParentAndChildren(DomBasicRenderer.java:365)
              at com.icesoft.faces.renderkit.dom_html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:96)
              at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:837)
              at com.icesoft.faces.component.util.CustomComponentUtils.renderChild(CustomComponentUtils.java:339)
              at com.icesoft.faces.component.paneltabset.PanelTabSetRenderer.writeTabCell(PanelTabSetRenderer.java:977)
              at com.icesoft.faces.component.paneltabset.PanelTabSetRenderer.encodeEnd(PanelTabSetRenderer.java:423)
              at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:861)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:503)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:497)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:497)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:497)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:497)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:497)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:497)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:497)
              at com.icesoft.faces.facelets.D2DFaceletViewHandler.renderResponse(D2DFaceletViewHandler.java:282)
              at com.icesoft.faces.application.D2DViewHandler.renderView(D2DViewHandler.java:159)
              at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
              at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
              at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
              at com.icesoft.faces.webapp.http.core.JsfLifecycleExecutor.apply(JsfLifecycleExecutor.java:19)
              at com.icesoft.faces.webapp.http.core.ReceiveSendUpdates.renderCycle(ReceiveSendUpdates.java:132)
              at com.icesoft.faces.webapp.http.core.ReceiveSendUpdates.service(ReceiveSendUpdates.java:74)
              at com.icesoft.faces.webapp.http.core.RequestVerifier.service(RequestVerifier.java:31)
              at com.icesoft.faces.webapp.http.common.standard.PathDispatcherServer.service(PathDispatcherServer.java:24)
              at com.icesoft.faces.webapp.http.servlet.BasicAdaptingServlet.service(BasicAdaptingServlet.java:16)
              at com.icesoft.faces.webapp.http.servlet.PathDispatcher.service(PathDispatcher.java:23)
              at com.icesoft.faces.webapp.http.servlet.SessionDispatcher.service(SessionDispatcher.java:53)
              at com.icesoft.faces.webapp.http.servlet.SessionVerifier.service(SessionVerifier.java:26)
              at com.icesoft.faces.webapp.http.servlet.PathDispatcher.service(PathDispatcher.java:23)
              at com.icesoft.faces.webapp.http.servlet.MainServlet.service(MainServlet.java:131)
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
              at com.icesoft.faces.webapp.xmlhttp.BlockingServlet.service(BlockingServlet.java:56)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
              at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
              at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
              at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
              at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
              at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
              at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
              at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
              at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
              at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
              at java.lang.Thread.run(Thread.java:619)

      This goes from index 1 to 5

      Here is the dataTable tag, the bindings are passed in as attributes of the facelet composite component and in this case nothing is passed in for columnWidths:

          <ice:dataTable bgcolor="#{bgcolor}"
                         binding="#{binding}"
                         border="#{border}"
                         cellpadding="#{cellpadding}"
                         cellspacing="#{cellspacing}"
                         columnClasses="#{columnClasses}"
                         columnWidths="#{columnWidths}"
                         dir="#{dir}"
                         first="#{first}"
                         footerClass="#{footerClass}"
                         frame="#{frame}"
                         headerClass="#{headerClass}"
                         headerClasses="#{headerClasses}"
                         id="expandableTable"
                         lang="#{lang}"
                         rendered="true"
                         rowClasses="#{rowClasses}"
                         rows="#{rows}"
                         rules="#{rules}"
                         scrollHeight="#{scrollHeight}"
                         sortAscending="#{sortAscending}"
                         sortColumn="#{sortColumn}"
                         style="#{style}"
                         styleClass="#{styleClass}"
                         summary="#{summary}"
                         title="#{title}"
                         value="#{value}"
                         var="item"
                         width="#{width}">

      Yip said this is related to ICE-3943

        Issue Links

          Activity

          Hide
          yip.ng added a comment -

          Stack trace meant for info. only. Commented out.

          Show
          yip.ng added a comment - Stack trace meant for info. only. Commented out.
          Hide
          Joanne Bai added a comment -

          Tested successfully on 1.8.2 build 6 + Tomcat 6.0 using component showcase facelets-enh: No exception is thrown to the server console while testing Expandable Table.

          Tested using FF3.5 and IE7.

          Show
          Joanne Bai added a comment - Tested successfully on 1.8.2 build 6 + Tomcat 6.0 using component showcase facelets-enh: No exception is thrown to the server console while testing Expandable Table. Tested using FF3.5 and IE7.

            People

            • Assignee:
              Unassigned
              Reporter:
              Brad Kroeger
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: