MyFaces Tomahawk
  1. MyFaces Tomahawk
  2. TOMAHAWK-1249

Component ID j_id_id8:transScrollfirst has already been found in the view.

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Duplicate
    • Affects Version/s: 1.1.6
    • Fix Version/s: 1.1.9
    • Component/s: Data Scroller
    • Labels:
      None
    • Environment:
      Windows
      java version "1.6.0_03"
      GlassFish V2ur1
      Liferay 4.4.1
      jsf-api-1.2_07.jar
      jsf-impl-1.2_07.jar
      jsf-portlet-1.2.2_01.jar
      jstl-1.2.jar

      Description

      Posted on behalf Babu:

      We are attempting to achieve a paged, sortable data table using
      Tomahawk's t:dataScroller. It is deployed in Glassfish app server
      inside a portlet. When the page is first hit, the table renders
      successfully. After the first rendering, if the page is refreshed, the
      exception below is encountered.

      The JSP page is as follows:

      <t:dataTable id="studentTable" value='#

      {department.students}

      '
      var="student"
      border="0"
      rows="5"
      styleClass="liferay-table taglib-search-iterator"
      rowClasses="portlet-section-alternate,portlet-section-body"
      sortColumn="#

      {department.sortColumn}

      "
      sortable="true" >
      <t:column defaultSorted="true">
      <f:facet name="header">
      <t:commandSortHeader columnName="ID" arrow="true">
      <h:outputText value="#

      {msgs.IdColumnHeader}

      "/>
      </t:commandSortHeader>
      </f:facet>
      <h:outputText value="#

      {student.Id}

      " />
      </t:column>
      <t:column>
      <f:facet name="header">
      <t:commandSortHeader columnName="name" arrow="true">
      <h:outputText value="#

      {msgs.nameColumnHeader}

      "/>
      </t:commandSortHeader>
      </f:facet>
      <h:outputText value="#

      {student.name}

      " />
      </t:column>
      ...
      </t:dataTable>
      <h:panelGrid columns="1" styleClass="scrollerTable2" columnClasses="standardTable_ColumnCentered" >
      <t:dataScroller id="studentScroll"
      for="studentTable"
      fastStep="10"
      pageCountVar="pageCount"
      pageIndexVar="pageIndex"
      styleClass="scroller"
      paginator="true"
      paginatorMaxPages="9"
      paginatorTableClass="paginator"
      paginatorActiveColumnStyle="font-weight:bold;">
      <f:facet name="first" >
      <h:outputText id="firstLink" value="First"/>
      </f:facet>
      <f:facet name="last">
      <h:outputText id="lastLink" value="Last"/>
      </f:facet>
      <f:facet name="previous">
      <h:outputText id="previousLink" value="Previous"/>
      </f:facet>
      <f:facet name="next">
      <h:outputText id="nextLink" value="Next"/>
      </f:facet>
      </t:dataScroller>
      </h:panelGrid>

      department managed bean is configured as following in faces-config.xml:

      <managed-bean>
      <managed-bean-name>department</managed-bean-name>
      <managed-bean-class>xyz.abc.Department</managed-bean-class>
      <managed-bean-scope>session</managed-bean-scope>
      </managed-bean>

      During the first parse of the JSP page, the HtmlDataScrollerRenderer
      contructs one HtmlCommandLink object for each facet (First, Last,
      Previous and Next in the above example) and each page link in the
      getLink() method. All HtmlCommandLink objects are added as children to
      the scroller. When the page is refreshed, another set of child
      HtmlCommandLink objects with the same IDs as the ones created for the
      previous request is added to the rendered. This results in an ID
      conflict as each ID is now shared by 2 child links. Hence the
      IllegalStateException.

      [#|2008-05-02T16:32:33.068-0600|INFO|sun-appserver9.1|null|_ThreadID=19;_ThreadName=httpSSLWorkerThread-8080-0;RENDER_RESPONSE 6;com.sun.faces.portlet.FacesContextImpl@13a0116;|PS_CSFP0033
      java.lang.IllegalStateException: Component ID j_id_id8:transScrollfirst has already been found in the view. See below for details.
      +id: j_id_id6
      type: teamdev.jsf.n@676214
      +id: j_id_id8
      type: javax.faces.component.html.HtmlForm@158407e
      +id: j_id_id10
      type: javax.faces.component.html.HtmlMessages@1938370
      +id: transTable
      type: org.apache.myfaces.component.html.ext.HtmlDataTable@f22252
      +id: j_id_id14
      type: org.apache.myfaces.custom.column.HtmlSimpleColumn@ab7280
      +id: j_id_id18
      type: org.apache.myfaces.custom.sortheader.HtmlCommandSortHeader@1ea3b13
      +id: j_id_id20
      type: javax.faces.component.html.HtmlOutputText@cc780c
      +id: j_id_id24
      type: javax.faces.component.html.HtmlOutputText@1dd6eb3
      +id: j_id_id27
      type: org.apache.myfaces.custom.column.HtmlSimpleColumn@8ee118
      +id: j_id_id31
      type: org.apache.myfaces.custom.sortheader.HtmlCommandSortHeader@5bfa39
      +id: j_id_id33
      type: javax.faces.component.html.HtmlOutputText@88f4fe
      +id: j_id_id37
      type: javax.faces.component.html.HtmlOutputText@18c74e6
      +id: j_id_id40
      type: org.apache.myfaces.custom.column.HtmlSimpleColumn@4eb41e
      +id: j_id_id44
      type: org.apache.myfaces.custom.sortheader.HtmlCommandSortHeader@11320ce
      +id: j_id_id46
      type: javax.faces.component.html.HtmlOutputText@cec13e
      +id: j_id_id50
      type: javax.faces.component.html.HtmlOutputText@1f0e98e
      +id: j_id_id53
      type: org.apache.myfaces.custom.column.HtmlSimpleColumn@1758a6d
      +id: j_id_id57
      type: org.apache.myfaces.custom.sortheader.HtmlCommandSortHeader@1d32c17
      +id: j_id_id59
      type: javax.faces.component.html.HtmlOutputText@f3d14e
      +id: j_id_id63
      type: javax.faces.component.html.HtmlOutputText@13293de
      +id: j_id_id66
      type: org.apache.myfaces.custom.column.HtmlSimpleColumn@189ee14
      +id: j_id_id70
      type: org.apache.myfaces.custom.sortheader.HtmlCommandSortHeader@6d829c
      +id: j_id_id72
      type: javax.faces.component.html.HtmlOutputText@199e586
      +id: j_id_id76
      type: javax.faces.component.html.HtmlOutputText@abffcf
      +id: j_id_id79
      type: org.apache.myfaces.custom.column.HtmlSimpleColumn@278a0d
      +id: j_id_id83
      type: org.apache.myfaces.custom.sortheader.HtmlCommandSortHeader@1d85fa9
      +id: j_id_id85
      type: javax.faces.component.html.HtmlOutputText@707f5a
      +id: j_id_id89
      type: javax.faces.component.html.HtmlOutputText@1b91c19
      +id: j_id_id93
      type: javax.faces.component.html.HtmlPanelGrid@1e3b55f
      +id: transScroll
      type: org.apache.myfaces.custom.datascroller.HtmlDataScroller@9891c4
      +id: j_id_id109
      type: javax.faces.component.html.HtmlOutputText@8a0225
      +id: j_id_id104
      type: javax.faces.component.html.HtmlOutputText@92e615
      +id: j_id_id114
      type: javax.faces.component.html.HtmlOutputText@3f9606
      +id: j_id_id99
      type: javax.faces.component.html.HtmlOutputText@92933a
      +id: transScrollfirst
      type: javax.faces.component.html.HtmlCommandLink@ffef30
      +id: transScrollfirst_param
      type: javax.faces.component.UIParameter@b04315
      +id: transScrollprevious
      type: javax.faces.component.html.HtmlCommandLink@42fa5
      +id: transScrollprevious_param
      type: javax.faces.component.UIParameter@d41557
      +id: transScrollidx1
      type: javax.faces.component.html.HtmlCommandLink@1c52a28
      +id: transScrollidx1_param
      type: javax.faces.component.UIParameter@152e586
      +id: null
      type: javax.faces.component.html.HtmlOutputText@15ad9b6
      +id: transScrollidx2
      type: javax.faces.component.html.HtmlCommandLink@18b5924
      +id: transScrollidx2_param
      type: javax.faces.component.UIParameter@18989d9
      +id: null
      type: javax.faces.component.html.HtmlOutputText@b943e5
      +id: transScrollidx3
      type: javax.faces.component.html.HtmlCommandLink@1188a6d
      +id: transScrollidx3_param
      type: javax.faces.component.UIParameter@283316
      +id: null
      type: javax.faces.component.html.HtmlOutputText@132041a
      +id: transScrollnext
      type: javax.faces.component.html.HtmlCommandLink@ab6552
      +id: transScrollnext_param
      type: javax.faces.component.UIParameter@8913de
      +id: transScrolllast
      type: javax.faces.component.html.HtmlCommandLink@177668f
      +id: transScrolllast_param
      type: javax.faces.component.UIParameter@1ee4879
      +id: transScrollfirst
      type: javax.faces.component.html.HtmlCommandLink@d83b65
      +id: transScrollfirst_param
      type: javax.faces.component.UIParameter@2374bb
      +id: transScrollprevious
      type: javax.faces.component.html.HtmlCommandLink@1c4cc24
      +id: transScrollprevious_param
      type: javax.faces.component.UIParameter@13682a8
      +id: transScrollidx1
      type: javax.faces.component.html.HtmlCommandLink@1bbea5e
      +id: transScrollidx1_param
      type: javax.faces.component.UIParameter@17fdb5
      +id: null
      type: javax.faces.component.html.HtmlOutputText@111782c
      +id: transScrollidx2
      type: javax.faces.component.html.HtmlCommandLink@1e8b31a
      +id: transScrollidx2_param
      type: javax.faces.component.UIParameter@468888
      +id: null
      type: javax.faces.component.html.HtmlOutputText@adc4f8
      +id: transScrollidx3
      type: javax.faces.component.html.HtmlCommandLink@5e8ebf
      +id: transScrollidx3_param
      type: javax.faces.component.UIParameter@1edcf06
      +id: null
      type: javax.faces.component.html.HtmlOutputText@1b2c41d
      +id: transScrollnext
      type: javax.faces.component.html.HtmlCommandLink@1698849
      +id: transScrollnext_param
      type: javax.faces.component.UIParameter@17286e3
      +id: transScrolllast
      type: javax.faces.component.html.HtmlCommandLink@1f5b02f
      +id: transScrolllast_param
      type: javax.faces.component.UIParameter@1020398
      +id: teamdevValidationProcessor
      type: teamdev.jsf.component.validation.ValidationProcessor@b79a3b

      at com.sun.faces.application.StateManagerImpl.checkIdUniqueness(StateManagerImpl.java:335)
      at com.sun.faces.application.StateManagerImpl.checkIdUniqueness(StateManagerImpl.java:322)
      at com.sun.faces.application.StateManagerImpl.checkIdUniqueness(StateManagerImpl.java:322)
      at com.sun.faces.application.StateManagerImpl.checkIdUniqueness(StateManagerImpl.java:322)
      at com.sun.faces.application.StateManagerImpl.saveSerializedView(StateManagerImpl.java:199)
      at javax.faces.application.StateManager.saveView(StateManager.java:155)
      at com.sun.faces.portlet.ViewHandlerImpl$WriteBehindStringWriter.flushToWriter(ViewHandlerImpl.java:486)
      at com.sun.faces.portlet.ViewHandlerImpl.renderView(ViewHandlerImpl.java:281)
      at teamdev.jsf.cb.renderView(SourceFile:45)
      at teamdev.jsf.aq.renderView(SourceFile:404)
      at com.sun.faces.portlet.LifecycleImpl$RenderResponsePhase.execute(LifecycleImpl.java:691)
      at com.sun.faces.portlet.LifecycleImpl.phase(LifecycleImpl.java:330)
      at com.sun.faces.portlet.LifecycleImpl.render(LifecycleImpl.java:266)
      at com.sun.faces.portlet.FacesPortlet.renderFaces(FacesPortlet.java:358)
      at com.sun.faces.portlet.FacesPortlet.doView(FacesPortlet.java:286)
      at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:235)
      at javax.portlet.GenericPortlet.render(GenericPortlet.java:163)
      at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:102)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
      at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
      at org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:855)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:703)
      at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:660)
      at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:578)
      at com.liferay.portlet.CachePortlet._invoke(CachePortlet.java:408)
      at com.liferay.portlet.CachePortlet.render(CachePortlet.java:251)
      at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java from :1323)
      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:93)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:470)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:364)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
      at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
      at org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:855)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:703)
      at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:660)
      at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:578)
      at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:1862)
      at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:165)
      at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:102)
      at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:270)
      at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:189)
      at org.apache.jsp.html.portal.layout.view.portlet_jsp._jspService(portlet_jsp.java from :784)
      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:93)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:470)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:364)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
      at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
      at org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:855)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:703)
      at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:660)
      at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:578)
      at com.liferay.portal.action.LayoutAction.includeLayoutContent(LayoutAction.java:308)
      at com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:185)
      at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
      at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
      at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:158)
      at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
      at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:738)
      at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:401)
      at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:630)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
      at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
      at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:98)
      at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.doFilter(VirtualHostFilter.java:149)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
      at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:98)
      at com.liferay.portal.servlet.filters.sessionid.SessionIdFilter.doFilter(SessionIdFilter.java:81)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
      at org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:853)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:703)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:542)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:474)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:366)
      at com.liferay.portal.servlet.FriendlyURLServlet.service(FriendlyURLServlet.java:137)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
      at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
      at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:98)
      at com.liferay.filters.strip.StripFilter.doFilter(StripFilter.java:88)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
      at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:98)
      at com.liferay.filters.compression.CompressionFilter.doFilter(CompressionFilter.java:118)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
      at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:98)
      at com.liferay.filters.secure.SecureFilter.doFilter(SecureFilter.java:150)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
      at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:98)
      at com.liferay.filters.doubleclick.DoubleClickFilter.doFilter(DoubleClickFilter.java:132)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
      at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:98)
      at com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter.doFilter(LayoutCacheFilter.java:190)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
      at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:98)
      at com.liferay.portal.servlet.filters.autologin.AutoLoginFilter.doFilter(AutoLoginFilter.java:108)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
      at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:98)
      at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.doFilter(VirtualHostFilter.java:173)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
      at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:98)
      at com.liferay.portal.servlet.filters.sessionid.SessionIdFilter.doFilter(SessionIdFilter.java:81)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288)
      at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
      at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
      at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
      at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
      at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
      at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
      at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
      at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
      at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
      at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
      at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)

      #]
      1. tomahawn-1249.patch
        1 kB
        Jan Nielsen
      2. HtmlDataScrollerRenderer.java
        22 kB
        Rodrigo Macedo

        Issue Links

          Activity

          Leonardo Uribe made changes -
          Fix Version/s 1.1.9 [ 12314035 ]
          Fix Version/s 1.1.9-SNAPSHOT [ 12313508 ]
          Leonardo Uribe made changes -
          Fix Version/s 1.1.9-SNAPSHOT [ 12313508 ]
          Leonardo Uribe made changes -
          Assignee Leonardo Uribe [ lu4242 ]
          Resolution Duplicate [ 3 ]
          Status Patch Available [ 10002 ] Closed [ 6 ]
          Hide
          Leonardo Uribe added a comment -

          This is a duplicate of TOMAHAWK-596 so it will be closed.

          Show
          Leonardo Uribe added a comment - This is a duplicate of TOMAHAWK-596 so it will be closed.
          Leonardo Uribe made changes -
          Link This issue duplicates TOMAHAWK-596 [ TOMAHAWK-596 ]
          Hide
          Leonardo Uribe added a comment -

          Checking the problem it seems related to incorrect handling of transient components for some specific state manager implementations.

          Theorically, a transient component added to a component tree should not be saved and restored, but in the practice, there are some state managers that do not do this.

          Show
          Leonardo Uribe added a comment - Checking the problem it seems related to incorrect handling of transient components for some specific state manager implementations. Theorically, a transient component added to a component tree should not be saved and restored, but in the practice, there are some state managers that do not do this.
          Hide
          Jan Nielsen added a comment -

          While we have been successfully using Rodrigo's patch included in this report for our JSF in JPSs in Portlets for past few months, we just switched to JSF in Facelets in Portlets and, strangely, the problem re-appeared. I'm a bit puzzled why a switch to Facelets would cause the fix to this issue to no longer work - any ideas? I did verify that my tomahawk 1.1.6 contains my patch.

          Show
          Jan Nielsen added a comment - While we have been successfully using Rodrigo's patch included in this report for our JSF in JPSs in Portlets for past few months, we just switched to JSF in Facelets in Portlets and, strangely, the problem re-appeared. I'm a bit puzzled why a switch to Facelets would cause the fix to this issue to no longer work - any ideas? I did verify that my tomahawk 1.1.6 contains my patch.
          Hide
          Rodrigo Macedo added a comment -

          Hello Leonardo.

          That's probably right. Removing only the children causing the issue is probably a better solution.
          Nevertheless, removing all children seems to be working fine for me with no side effects.

          Show
          Rodrigo Macedo added a comment - Hello Leonardo. That's probably right. Removing only the children causing the issue is probably a better solution. Nevertheless, removing all children seems to be working fine for me with no side effects.
          Hide
          Leonardo Uribe added a comment -

          This part of the patch:

          + scroller.getChildren().clear();

          it is not a good way to do this. The idea could be remove the children commandLinks created inside the renderer, rather than all children. Unfortunately the solution is incomplete, but is a good start to solve this issue.

          Show
          Leonardo Uribe added a comment - This part of the patch: + scroller.getChildren().clear(); it is not a good way to do this. The idea could be remove the children commandLinks created inside the renderer, rather than all children. Unfortunately the solution is incomplete, but is a good start to solve this issue.
          Jan Nielsen made changes -
          Attachment tomahawn-1249.patch [ 12388652 ]
          Hide
          Jan Nielsen added a comment -

          This is patch file version of Rodrigo Macedo changes (less comment monikers).

          Show
          Jan Nielsen added a comment - This is patch file version of Rodrigo Macedo changes (less comment monikers).
          Hide
          Rodrigo Macedo added a comment -

          Hi Leonardo.
          I'm not sure if I understand what you mean by "the HtmlDataScrollerRenderer" is quite old as I got it from the latest tomahawk jar.

          The changes that need to be done are described in my first comment. Please refer to it and let me know if you have questions.
          I also attached the modified version of the entire class so feel free to download it, compile it with the rest of the package and test it!

          Show
          Rodrigo Macedo added a comment - Hi Leonardo. I'm not sure if I understand what you mean by "the HtmlDataScrollerRenderer" is quite old as I got it from the latest tomahawk jar. The changes that need to be done are described in my first comment. Please refer to it and let me know if you have questions. I also attached the modified version of the entire class so feel free to download it, compile it with the rest of the package and test it!
          Hide
          Leonardo Uribe added a comment -

          The HtmlDataScrollerRenderer is quite old, and many changes has been done, so it is very difficult to understand the changes.

          Could you give us in a patch or diff format? or if this is not possible tell where should the changes be done?

          Show
          Leonardo Uribe added a comment - The HtmlDataScrollerRenderer is quite old, and many changes has been done, so it is very difficult to understand the changes. Could you give us in a patch or diff format? or if this is not possible tell where should the changes be done?
          Rodrigo Macedo made changes -
          Attachment HtmlDataScrollerRenderer.java [ 12387292 ]
          Hide
          Rodrigo Macedo added a comment -

          Modified HtmlDataScrollerRenderer class

          Show
          Rodrigo Macedo added a comment - Modified HtmlDataScrollerRenderer class
          Rodrigo Macedo made changes -
          Field Original Value New Value
          Status Open [ 1 ] Patch Available [ 10002 ]
          Jan Nielsen created issue -

            People

            • Assignee:
              Leonardo Uribe
              Reporter:
              Jan Nielsen
            • Votes:
              3 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development