6 Replies Latest reply on Dec 2, 2009 10:28 AM by dfghi

    Recursive jsp tag not compiled.

    dfghi

      I'm using JBoss AS 5.1.0.GA (java 1.6.0_17) and also JBoss SOA 4.3 (which contains older version of JBoss AS).
      I'm trying to use a simple jsp tag that includes itself recursively, as attached below:

      <jsp:root version="2.1"
       xmlns:jsp="http://java.sun.com/JSP/Page"
       xmlns:c="http://java.sun.com/jsp/jstl/core"
       xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"
       xmlns:fn="http://java.sun.com/jsp/jstl/functions"
       xmlns:mytags="urn:jsptagdir:/WEB-INF/tags/myTags">
      
       <!--
       Creates an xml representation of the category tree.
       -->
       <!-- The category node -->
       <jsp:directive.attribute name="category" type="MyObject" required="true" rtexprvalue="true" />
       <!-- Children categories should be included? -->
       <jsp:directive.attribute name="includeChildren" type="java.lang.Boolean" required="false" rtexprvalue="true" />
       <category>
       <name>${category.name}</name>
       <children>
       <c:if test="${includeChildren}">
       <mytags:recur categoryNode="${subCategory}" includeChildren="${includeChildren}" />
       </c:if>
       </children>
       </category>
      </jsp:root>
      

      The tag is used to create an xml representation of a tree. But JBoss refuses to compile it, stating that the class corresponding to this jsp is not found.
      Tomcat has no problem in compiling the same class. Is this a bug in JBoss? Or is there a way to force JBoss to compile correctly this kind of tag?



        • 1. Re: Recursive jsp tag not compiled.
          dfghi

          The exception generated is the following:

          17:20:36,557 ERROR [ContainerBase] Servlet.service() for servlet jsp threw exception
          java.lang.ClassNotFoundException: org.apache.jsp.tag.web.myTags.recur_tag
           at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
           at java.security.AccessController.doPrivileged(Native Method)
           at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
           at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134)
           at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)
           at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:598)
           at org.apache.jasper.servlet.JspServletWrapper.loadTagFile(JspServletWrapper.java:224)
           at org.apache.jasper.compiler.TagFileProcessor.loadTagFile(TagFileProcessor.java:576)
           at org.apache.jasper.compiler.TagFileProcessor.access$000(TagFileProcessor.java:50)
           at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:627)
           at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:631)
           at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2497)
           at org.apache.jasper.compiler.Node$UninterpretedTag.accept(Node.java:1223)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2497)
           at org.apache.jasper.compiler.Node$UninterpretedTag.accept(Node.java:1223)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2397)
           at org.apache.jasper.compiler.Node$JspRoot.accept(Node.java:566)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2392)
           at org.apache.jasper.compiler.Node$Root.accept(Node.java:489)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.TagFileProcessor.loadTagFiles(TagFileProcessor.java:645)
           at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:177)
           at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
           at org.apache.jasper.compiler.Compiler.compile(Compiler.java:294)
           at org.apache.jasper.compiler.Compiler.compile(Compiler.java:281)
           at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
           at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
           at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
           at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:99)
           at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:199)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
           at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
           at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:403)
           at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
           at info.magnolia.module.templating.renderers.JspTemplateRenderer.onRender(JspTemplateRenderer.java:73)
           at info.magnolia.module.templating.AbstractRenderer.render(AbstractRenderer.java:83)
           at info.magnolia.module.templating.renderers.AbstractTemplateRenderer.renderTemplate(AbstractTemplateRenderer.java:76)
           at info.magnolia.module.templating.RenderingFilter.doFilter(RenderingFilter.java:93)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.BackwardCompatibilityFilter.doFilter(BackwardCompatibilityFilter.java:72)
           at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.InterceptFilter.doFilter(InterceptFilter.java:121)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.AggregatorFilter.doFilter(AggregatorFilter.java:103)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:61)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.RepositoryMappingFilter.doFilter(RepositoryMappingFilter.java:90)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:76)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.VirtualUriFilter.doFilter(VirtualUriFilter.java:115)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:75)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at net.sourceforge.stripes.controller.StripesFilter.doFilter(StripesFilter.java:247)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.CosMultipartRequestFilter.doFilter(CosMultipartRequestFilter.java:87)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:61)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:89)
           at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:84)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:84)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:87)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:96)
           at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:199)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
           at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
           at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
           at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
           at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
           at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
           at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
           at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
           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:637)
          17:20:36,608 INFO [STDOUT] 2009-11-30 17:20:36,565 ERROR info.magnolia.module.templating.RenderingFilter.doFilter(RenderingFilter.java:110) Can't render template /WEB-INF/jsps/templates/search-xml.jsp
          info.magnolia.module.templating.RenderException: Can't render template /WEB-INF/jsps/templates/search-xml.jsp
           at info.magnolia.module.templating.renderers.JspTemplateRenderer.onRender(JspTemplateRenderer.java:76)
           at info.magnolia.module.templating.AbstractRenderer.render(AbstractRenderer.java:83)
           at info.magnolia.module.templating.renderers.AbstractTemplateRenderer.renderTemplate(AbstractTemplateRenderer.java:76)
           at info.magnolia.module.templating.RenderingFilter.doFilter(RenderingFilter.java:93)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.BackwardCompatibilityFilter.doFilter(BackwardCompatibilityFilter.java:72)
           at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.InterceptFilter.doFilter(InterceptFilter.java:121)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.AggregatorFilter.doFilter(AggregatorFilter.java:103)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:61)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.RepositoryMappingFilter.doFilter(RepositoryMappingFilter.java:90)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:76)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.VirtualUriFilter.doFilter(VirtualUriFilter.java:115)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:75)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at net.sourceforge.stripes.controller.StripesFilter.doFilter(StripesFilter.java:247)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.CosMultipartRequestFilter.doFilter(CosMultipartRequestFilter.java:87)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:61)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:89)
           at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:84)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:84)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:87)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:96)
           at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:199)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
           at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
           at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
           at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
           at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
           at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
           at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
           at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
           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:637)
          Caused by: org.apache.jasper.JasperException: Unable to load class for JSP
           at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:600)
           at org.apache.jasper.servlet.JspServletWrapper.loadTagFile(JspServletWrapper.java:224)
           at org.apache.jasper.compiler.TagFileProcessor.loadTagFile(TagFileProcessor.java:576)
           at org.apache.jasper.compiler.TagFileProcessor.access$000(TagFileProcessor.java:50)
           at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:627)
           at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:233
          17:20:36,612 INFO [STDOUT] 6)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:631)
           at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2497)
           at org.apache.jasper.compiler.Node$UninterpretedTag.accept(Node.java:1223)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2497)
           at org.apache.jasper.compiler.Node$UninterpretedTag.accept(Node.java:1223)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2397)
           at org.apache.jasper.compiler.Node$JspRoot.accept(Node.java:566)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2392)
           at org.apache.jasper.compiler.Node$Root.accept(Node.java:489)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.TagFileProcessor.loadTagFiles(TagFileProcessor.java:645)
           at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:177)
           at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
           at org.apache.jasper.compiler.Compiler.compile(Compiler.java:294)
           at org.apache.jasper.compiler.Compiler.compile(Compiler.java:281)
           at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
           at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
           at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
           at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:99)
           at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:199)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
           at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
           at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:403)
           at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
           at info.magnolia.module.templating.renderers.JspTemplateRenderer.onRender(JspTemplateRenderer.java:73)
           ... 84 more
          Caused by: java.lang.ClassNotFoundException: org.apache.jsp.tag.web.myTags.recur_tag
           at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
           at java.security.AccessController.doPrivileged(Native Method)
           at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
           at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134)
           at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)
           at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:598)
           ... 131 more
          17:20:36,628 INFO [STDOUT] 2009-11-30 17:20:36,613 WARN net.sourceforge.stripes.exception.DefaultExceptionHandler.warn(Log.java:90) Unhandled exception caught by the Stripes default exception handler.
          javax.servlet.ServletException: info.magnolia.module.templating.RenderException: Can't render template /WEB-INF/jsps/templates/search-xml.jsp
           at info.magnolia.module.templating.RenderingFilter.doFilter(RenderingFilter.java:111)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.BackwardCompatibilityFilter.doFilter(BackwardCompatibilityFilter.java:72)
           at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.InterceptFilter.doFilter(InterceptFilter.java:121)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.AggregatorFilter.doFilter(AggregatorFilter.java:103)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:61)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.RepositoryMappingFilter.doFilter(RepositoryMappingFilter.java:90)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:76)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.VirtualUriFilter.doFilter(VirtualUriFilter.java:115)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:75)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at net.sourceforge.stripes.controller.StripesFilter.doFilter(StripesFilter.java:247)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
           at info.magnolia.cms.filters.CosMultipartRequestFilter.doFilter(CosMultipartRequestFilter.java:87)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:61)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:89)
           at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:84)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:84)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:87)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
           at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
           at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
           at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:96)
           at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:199)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
           at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
           at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
           at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
           at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
           at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
           at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
           at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
           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:637)
          Caused by: info.magnolia.module.templating.RenderException: Can't render template /WEB-INF/jsps/templates/search-xml.jsp
           at info.magnolia.module.templating.renderers.JspTemplateRenderer.onRender(JspTemplateRenderer.java:76)
           at info.magnolia.module.templating.AbstractRenderer.render(AbstractRenderer.java:83)
           at info.magnolia.module.templating.renderers.AbstractTemplateRenderer.renderTemplate(AbstractTemplateRenderer.java:76)
           at info.magnolia.module.templating.RenderingFilter.doFilter(RenderingFilter.java:93)
           ... 81 more
          Caused by: org.apache.jasper.JasperException: Unable to load class for JSP
           at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:600)
           at org.apache.jasper.servlet.JspServletWrapper.loadTagFile(JspServletWrapper.java:224)
           at org.apache.jasper.compiler.TagFileProcessor.loadTagFile(TagFileProcessor.java:576)
           at org.apache.jasper.compiler.TagFileProcessor.access$000(TagF
          17:20:36,631 INFO [STDOUT] ileProcessor.java:50)
           at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:627)
           at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:631)
           at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2497)
           at org.apache.jasper.compiler.Node$UninterpretedTag.accept(Node.java:1223)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2497)
           at org.apache.jasper.compiler.Node$UninterpretedTag.accept(Node.java:1223)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2397)
           at org.apache.jasper.compiler.Node$JspRoot.accept(Node.java:566)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
           at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2392)
           at org.apache.jasper.compiler.Node$Root.accept(Node.java:489)
           at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
           at org.apache.jasper.compiler.TagFileProcessor.loadTagFiles(TagFileProcessor.java:645)
           at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:177)
           at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
           at org.apache.jasper.compiler.Compiler.compile(Compiler.java:294)
           at org.apache.jasper.compiler.Compiler.compile(Compiler.java:281)
           at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
           at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
           at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
           at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:99)
           at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:199)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
           at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
           at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:403)
           at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
           at info.magnolia.module.templating.renderers.JspTemplateRenderer.onRender(JspTemplateRenderer.java:73)
           ... 84 more
          Caused by: java.lang.ClassNotFoundException: org.apache.jsp.tag.web.myTags.recur_tag
           at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
           at java.security.AccessController.doPrivileged(Native Method)
           at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
           at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134)
           at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)
           at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:598)
           ... 131 more
          
          


          • 2. Re: Recursive jsp tag not compiled.
            dfghi

            Seems there is some kind of workaround: duplicating the tag as is and creating a couple of tag that calls each other seems to give the same error. But creating a new tag like this and calling this from the first tag works on JBoss SOA 4.3:

            <jsp:root version="2.1"
             xmlns:jsp="http://java.sun.com/JSP/Page"
             xmlns:c="http://java.sun.com/jsp/jstl/core"
             xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"
             xmlns:fn="http://java.sun.com/jsp/jstl/functions"
             xmlns:mytags="urn:jsptagdir:/WEB-INF/tags/myTags">
            
             <!-- The category node -->
             <jsp:directive.attribute name="category" type="MyObject" required="true" rtexprvalue="true" />
             <!-- Children categories should be included? -->
             <jsp:directive.attribute name="includeChildren" type="java.lang.Boolean" required="false" rtexprvalue="true" />
             <mytags:recur category="${category}" includeChildren="${includeChildren}" />
            </jsp:root>
            


            As a side note, websphere 6.1 has no problem compiling the recursive tag.

            • 3. Re: Recursive jsp tag not compiled.
              wolfgangknauf

              Hi,

              as far as I know, the Tomcat included in JBoss 4.2.x did not support all of JavaEE5, so maybe your jsp version declaration of "2.1" is not recognized. Try to change it to "2.0". But for JBoss 5.x, this should work, as it is fully JavaEE5 compliant.

              Maybe this helps

              Wolfgang

              • 4. Re: Recursive jsp tag not compiled.
                dfghi

                I changed to 2.0, but there is the same error, both on JBoss 5.1.0.GA and 4.3. I suppose it's a bug, then.

                As a side note, JBoss 4.3 has no problem accepting the 2.1 jsp version (except for this, obviously).

                • 5. Re: Recursive jsp tag not compiled.
                  wolfgangknauf

                  I had some problems with a 2.1 web.xml version in 4.2.x (EL in jsp tags did no longer work), so I suspected that a similar thing might have happened to you. But as this did not fix it, I have no further ideas...

                  Normally this sounds like a Tomcat issue, but as you checked this already, we can exclude this, too.

                  Is there a forum for the "JBoss Web" server?

                  Best regards

                  Wolfgang

                  • 6. Re: Recursive jsp tag not compiled.
                    dfghi

                    I opened a jira, because this seems a bug (at least to me):
                    http://jira.jboss.org/jira/browse/JBAS-7496

                    But if this is not the right forum for the topic please tell me where I should ask.