Hi It looks like a page processed by facelets, not by JSP.
Between 2.2.0-beta and 2.2.0 we did a change in c:forEach tag. The improvement is ok, but according to the stack trace I can see a problemn with the id generation. I recently fixed this issue: https://issues.apache.org/jira/browse/MYFACES-3853 It looks like something related. If the id generation is correct, c:forEach and c:if receive different ids. The old algorithm in c:forEach did not have an associated id. Could you please try with the latest snapshot available here? https://repository.apache.org/content/repositories/snapshots/org/apache/myfaces/core/ regards, Leonardo Uribe 2014-02-18 21:20 GMT-05:00 Najy Nicolas <najy.nico...@gmail.com>: > Hi, > > > I have a <c:if tag inside 3 nested for loops in a JSP file. > I get an error only when I add the <c:if to the JSP... > > I only got the error when I upgraded to "MyFaces 2.2.0". The same JSP > worked fine when I used "MyFaces 2.2.0-beta" > > > <c:forEach var="table" items="#{myBean.tables}"> > <c:forEach var="row" items="#{table.rows}"> > <c:forEach var="cell" items="#{row.cells}"> > <c:if test="#{cell.visible}"> > #{cell.comeValue} > </c:if> > <c:forEach/> > <c:forEach/> > <c:forEach/> > > WARNING: JSF error handler: > java.lang.ClassCastException: java.lang.Boolean cannot be cast to > org.apache.myfaces.view.facelets.tag.jstl.core.IterationState > at > org.apache.myfaces.view.facelets.tag.jstl.core.ForEachHandler.apply(ForEachHandler.java:210) > at > javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:46) > at > org.apache.myfaces.view.facelets.tag.jstl.core.ForEachHandler.applyFirstTime(ForEachHandler.java:382) > at > org.apache.myfaces.view.facelets.tag.jstl.core.ForEachHandler.apply(ForEachHandler.java:229) > at > javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:46) > at > org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:161) > at > org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59) > at > org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:514) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:568) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:546) > at > org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240) > at > org.apache.myfaces.view.facelets.tag.ui.IncludeHandler.apply(IncludeHandler.java:226) > at > org.apache.myfaces.view.facelets.tag.jstl.core.ForEachHandler.applyFirstTime(ForEachHandler.java:382) > at > org.apache.myfaces.view.facelets.tag.jstl.core.ForEachHandler.apply(ForEachHandler.java:229) > at > org.apache.myfaces.view.facelets.tag.jstl.core.IfHandler.apply(IfHandler.java:126) > at > javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:46) > at > org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:161) > at > org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59) > at > org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:514) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:568) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:546) > at > org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240) > at > org.apache.myfaces.view.facelets.tag.ui.IncludeHandler.apply(IncludeHandler.java:226) > at > org.apache.myfaces.view.facelets.tag.jstl.core.IfHandler.apply(IfHandler.java:126) > at > javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:46) > at > org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:161) > at > org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59) > at > org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:514) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:568) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:546) > at > org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240) > at > org.apache.myfaces.view.facelets.tag.ui.IncludeHandler.apply(IncludeHandler.java:226) > at > org.apache.myfaces.view.facelets.tag.jstl.core.IfHandler.apply(IfHandler.java:126) > at > javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:46) > at > javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:55) > at > org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:373) > at > javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:50) > at > javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:46) > at > org.apache.myfaces.view.facelets.tag.ui.DefineHandler.applyDefinition(DefineHandler.java:86) > at > org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:178) > at > org.apache.myfaces.view.facelets.impl.TemplateContextImpl$TemplateManagerImpl.apply(TemplateContextImpl.java:193) > at > org.apache.myfaces.view.facelets.impl.TemplateContextImpl.includeDefinition(TemplateContextImpl.java:136) > at > org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeDefinition(DefaultFaceletContext.java:459) > at > org.apache.myfaces.view.facelets.tag.ui.InsertHandler.apply(InsertHandler.java:94) > at > javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:46) > at > javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:55) > at > org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:373) > at > javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:50) > at > javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:46) > at > org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59) > at > javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:46) > at > org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:514) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:568) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:546) > at > org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240) > at > org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:151) > at > org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59) > at > org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48) > at > org.apache.myfaces.view.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:187) > at > org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.buildView(FaceletViewDeclarationLanguage.java:477) > at > org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:78) > at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:267) > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198) > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(