I think I know what's going on...

-- Adam


On 1/25/07, noah <[EMAIL PROTECTED]> wrote:

Ok, new twist:

      <trh:body>
         <tr:form>
            <tr:table value="#{testBean.list}" var="item"
allDetailsEnabled="true">
               <f:facet name="detailStamp">
                  <ui:fragment>
                     <div>
                        <h:outputLabel for="foo" value="Foo"/>
                        <h:inputText value="#{item}" />
                     </div>
                  </ui:fragment>
               </f:facet>
               <tr:column headerText="Foo Value">
                  #{item}
               </tr:column>
            </tr:table>
         </tr:form>
      </trh:body>

Causes a ClassCastException (below).  If I take away the <div>, no
exception, so I'm guessing the problem is with transient components
like inline HTML.

java.lang.ClassCastException: javax.faces.component.html.HtmlOutputLabel
        at
org.apache.myfaces.trinidad.component.StampState$EVHState.restoreRowState(
StampState.java:342)
        at
org.apache.myfaces.trinidad.component.StampState.restoreStampState(
StampState.java:118)
        at
org.apache.myfaces.trinidad.component.UIXCollection.restoreStampState(
UIXCollection.java:819)
        at
org.apache.myfaces.trinidad.component.UIXTable.restoreStampState(
UIXTable.java:338)
        at
org.apache.myfaces.trinidad.component.UIXCollection.restoreStampState(
UIXCollection.java:840)
        at
org.apache.myfaces.trinidad.component.UIXTable.restoreStampState(
UIXTable.java:338)
        at
org.apache.myfaces.trinidad.component.UIXCollection._restoreStampState(
UIXCollection.java:1141)
        at
org.apache.myfaces.trinidad.component.UIXCollection.postRowDataChange(
UIXCollection.java:711)
        at org.apache.myfaces.trinidad.component.UIXCollection.setRowIndex
(UIXCollection.java:409)
        at
org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.table.TableRenderingContext
.<init>(TableRenderingContext.java:56)
        at
org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.TableRenderer.createRenderingContext
(TableRenderer.java:405)
        at
org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.TableRenderer.encodeAll
(TableRenderer.java:250)
        at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(
CoreRenderer.java:184)
        at
org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(
UIXComponentBase.java:700)
        at org.apache.myfaces.trinidad.component.UIXCollection.encodeEnd(
UIXCollection.java:495)
        at org.apache.myfaces.trinidad.render.RenderUtils.encodeRecursive(
RenderUtils.java:70)
        at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(
CoreRenderer.java:258)
        at
org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(
CoreRenderer.java:280)
        at
org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelPartialRootRenderer.renderContent
(PanelPartialRootRenderer.java:73)
        at
org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.BodyRenderer.renderContent
(BodyRenderer.java:137)
        at
org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelPartialRootRenderer.encodeAll
(PanelPartialRootRenderer.java:153)
        at
org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.BodyRenderer.encodeAll
(BodyRenderer.java:79)
        at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(
CoreRenderer.java:184)
        at
org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(
UIXComponentBase.java:700)
        at com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(
ComponentSupport.java:242)
        at com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(
ComponentSupport.java:239)
        at com.sun.facelets.FaceletViewHandler.renderView(
FaceletViewHandler.java:580)
        at
org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView
(ViewHandlerImpl.java:181)
        at org.apache.myfaces.lifecycle.LifecycleImpl.render(
LifecycleImpl.java:384)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:252)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
        at
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._invokeDoFilter
(TrinidadFilterImpl.java:329)
        at
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl
(TrinidadFilterImpl.java:293)
        at
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(
TrinidadFilterImpl.java:216)
        at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(
TrinidadFilter.java:93)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
        at
org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter
(SecurityContextHolderAwareRequestFilter.java:81)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
        at
org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(
FilterSecurityInterceptor.java:107)
        at
org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(
FilterSecurityInterceptor.java:72)
        at org.acegisecurity.util.FilterToBeanProxy.doFilter(
FilterToBeanProxy.java:90)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
        at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(
ExceptionTranslationFilter.java:110)
        at org.acegisecurity.util.FilterToBeanProxy.doFilter(
FilterToBeanProxy.java:90)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
        at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(
AbstractProcessingFilter.java:216)
        at org.acegisecurity.util.FilterToBeanProxy.doFilter(
FilterToBeanProxy.java:90)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
        at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(
HttpSessionContextIntegrationFilter.java:195)
        at org.acegisecurity.util.FilterToBeanProxy.doFilter(
FilterToBeanProxy.java:90)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
        at
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal
(OpenSessionInViewFilter.java:174)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(
OncePerRequestFilter.java:76)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
        at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
ExtensionsFilter.java:144)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
        at org.apache.catalina.core.StandardWrapperValve.invoke(
StandardWrapperValve.java:213)
        at org.apache.catalina.core.StandardContextValve.invoke(
StandardContextValve.java:178)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
AuthenticatorBase.java:432)
        at org.apache.catalina.core.StandardHostValve.invoke(
StandardHostValve.java:126)
        at org.apache.catalina.valves.ErrorReportValve.invoke(
ErrorReportValve.java:105)
        at org.apache.catalina.core.StandardEngineValve.invoke(
StandardEngineValve.java:107)
        at org.apache.catalina.connector.CoyoteAdapter.service(
CoyoteAdapter.java:148)
        at org.apache.coyote.http11.Http11Processor.process(
Http11Processor.java:869)
        at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection
(Http11BaseProtocol.java:664)
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(
PoolTcpEndpoint.java:527)
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(
LeaderFollowerWorkerThread.java:80)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
ThreadPool.java:684)
        at java.lang.Thread.run(Thread.java:595)


On 1/24/07, Adam Winer <[EMAIL PROTECTED]> wrote:
> What a coincidence - it's a Trinidad bug that I fixed
> about 2 hours ago!  If you download the absolute
> latest code and rebuild, the problem should be gone.
>
> -- Adam
>
>
> On 1/24/07, noah <[EMAIL PROTECTED]> wrote:
> >
> > This may be a Facelets issue, I'm not sure.
> >
> > Simple Example:
> >
> > <tr:table allDetailsEnabled="true" ...>
> >   <f:facet name="detailStamp">
> >     <h:panelGroup>
> >       <h:outputText value="foo"/>
> >       <br/>
> >       <h:outputText value="bar"/>
> >     </h:panelgroup>
> >   </f:facet>
> >   ...
> >
> > That gets me a index out of bounds exception (trace below).  Any idea
> > what's going on or how to fix it?
> >
> > My Setup:
> > Facelets 1.1.11
> > MyFaces & Tomahawk 1.1.3
> > Trinidad m1-SNAPSHOT
> >
> > exception:
> >
> > javax.servlet.ServletException: Index: 2, Size: 2
> >         javax.faces.webapp.FacesServlet.service(FacesServlet.java:152)
> >
> >
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._invokeDoFilter
> > (TrinidadFilterImpl.java:327)
> >
> >
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl
> > (TrinidadFilterImpl.java:291)
> >
> > org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter
(
> > TrinidadFilterImpl.java
> > :214)
> >         org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(
> > TrinidadFilter.java:90)
> >
> >
org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter
> > (SecurityContextHolderAwareRequestFilter.java:81)
> >
> >
org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(
> > FilterSecurityInterceptor.java:107)
> >
org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter
> > (FilterSecurityInterceptor.java:72)
> >         org.acegisecurity.util.FilterToBeanProxy.doFilter
> > (FilterToBeanProxy.java:90)
> >         org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(
> > ExceptionTranslationFilter.java:110)
> >         org.acegisecurity.util.FilterToBeanProxy.doFilter(
> > FilterToBeanProxy.java:90)
> >         org.acegisecurity.ui.AbstractProcessingFilter.doFilter
> > (AbstractProcessingFilter.java:216)
> >         org.acegisecurity.util.FilterToBeanProxy.doFilter(
> > FilterToBeanProxy.java:90)
> >
> > org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter
(
> > HttpSessionContextIntegrationFilter.java
> > :195)
> >         org.acegisecurity.util.FilterToBeanProxy.doFilter(
> > FilterToBeanProxy.java:90)
> >
> >
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal
> > (OpenSessionInViewFilter.java:174)
> >         org.springframework.web.filter.OncePerRequestFilter.doFilter
> > (OncePerRequestFilter.java:76)
> >         org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
> > ExtensionsFilter.java:144)
> >
> > root cause
> >
> > java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
> >         java.util.ArrayList.RangeCheck
> > (ArrayList.java:546)
> >         java.util.ArrayList.get(ArrayList.java:321)
> >         javax.faces.component._ComponentChildrenList.get
> > (_ComponentChildrenList.java:42)
> >
> > org.apache.myfaces.trinidad.component.UIXCollection.restoreStampState
> > (UIXCollection.java:837)
> >
org.apache.myfaces.trinidad.component.UIXTable.restoreStampState(
> > UIXTable.java:323)
> >
> > org.apache.myfaces.trinidad.component.UIXCollection._restoreStampState
(
> > UIXCollection.java:1110)
> >
> > org.apache.myfaces.trinidad.component.UIXCollection.postRowDataChange
> > (UIXCollection.java:729)
> >         org.apache.myfaces.trinidad.component.UIXCollection.setRowKey(
> > UIXCollection.java:388)
> >
> > org.apache.myfaces.trinidad.component.UIXCollection.setCurrencyString(
> > UIXCollection.java:639)
> >
> >
org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.table.TableSelectManyRenderer._setDeltas
> > (TableSelectManyRenderer.java:147)
> >
> >
org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.table.TableSelectManyRenderer.decode
> > (TableSelectManyRenderer.java:109)
> >
> >
org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.TableRenderer.decodeSelection
> > (TableRenderer.java:125)
> >
> >
org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.TableRenderer.decode
> > (TableRenderer.java:89)
> >
> >
org.apache.myfaces.trinidad.component.UIXComponentBase.__rendererDecode(
> > UIXComponentBase.java
> > :1011)
> >         org.apache.myfaces.trinidad.component.UIXComponentBase.decode(
> > UIXComponentBase.java:623)
> >
org.apache.myfaces.trinidad.component.UIXCollection.processDecodes
> > (UIXCollection.java:146)
> >         javax.faces.component.UIComponentBase.processDecodes
> > (UIComponentBase.java:602)
> >
> >
org.apache.myfaces.custom.tabbedpane.HtmlPanelTabbedPane.processDecodes(
> > HtmlPanelTabbedPane.java:65)
> >         javax.faces.component.UIForm.processDecodes(UIForm.java:53)
> >
> >
org.apache.myfaces.trinidad.component.UIXComponentBase.decodeChildrenImpl
> > (UIXComponentBase.java:889)
> >
> > org.apache.myfaces.trinidad.component.UIXComponentBase.decodeChildren(
> > UIXComponentBase.java:874)
> >
> > org.apache.myfaces.trinidad.component.UIXComponentBase.processDecodes(
> > UIXComponentBase.java
> > :725)
> >         javax.faces.component.UIComponentBase.processDecodes(
> > UIComponentBase.java:602)
> >         javax.faces.component.UIViewRoot.processDecodes(
UIViewRoot.java
> > :135)
> >         org.apache.myfaces.lifecycle.LifecycleImpl.applyRequestValues
> > (LifecycleImpl.java:219)
> >         org.apache.myfaces.lifecycle.LifecycleImpl.execute(
> > LifecycleImpl.java:71)
> >         javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
> >
> >
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._invokeDoFilter
> > (TrinidadFilterImpl.java:327)
> >
> >
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl
> > (TrinidadFilterImpl.java:291)
> >
> > org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter
(
> > TrinidadFilterImpl.java
> > :214)
> >         org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(
> > TrinidadFilter.java:90)
> >
> >
org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter
> > (SecurityContextHolderAwareRequestFilter.java:81)
> >
> >
org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(
> > FilterSecurityInterceptor.java:107)
> >
org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter
> > (FilterSecurityInterceptor.java:72)
> >         org.acegisecurity.util.FilterToBeanProxy.doFilter
> > (FilterToBeanProxy.java:90)
> >         org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(
> > ExceptionTranslationFilter.java:110)
> >         org.acegisecurity.util.FilterToBeanProxy.doFilter(
> > FilterToBeanProxy.java:90)
> >         org.acegisecurity.ui.AbstractProcessingFilter.doFilter
> > (AbstractProcessingFilter.java:216)
> >         org.acegisecurity.util.FilterToBeanProxy.doFilter(
> > FilterToBeanProxy.java:90)
> >
> > org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter
(
> > HttpSessionContextIntegrationFilter.java
> > :195)
> >         org.acegisecurity.util.FilterToBeanProxy.doFilter(
> > FilterToBeanProxy.java:90)
> >
> >
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal
> > (OpenSessionInViewFilter.java:174)
> >         org.springframework.web.filter.OncePerRequestFilter.doFilter
> > (OncePerRequestFilter.java:76)
> >         org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
> > ExtensionsFilter.java:144)
> >
>
>

Reply via email to