Kuali Rice Development
  1. Kuali Rice Development
  2. KULRICE-4237

recursive tag on linux using a tag alias causes an error during jsp compiling on Jetty 7

    Details

    • Type: Bug Fix Bug Fix
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.0.2.1, KC Release 3.0
    • Fix Version/s: 1.0.2.1, KC Release 3.0
    • Component/s: Development
    • Labels:
      None
    • Similar issues:
      KULRICE-5161treeNode.tag exhibits recursive tag problem on Linux in Jetty 7.4.1
      KULRICE-5843JSP Errors in Tomcat 7
      KULRICE-10505Fix Tomcat 7 jsp compilation errors in WorkgroupTab.jsp & RemoveReplaceDisplay.jsp
      KULRICE-5024JSP pages using display-el tag not working in rice 1.1
      KULRICE-3298The Rice jsp/tag files for KIM throw errors when a KIM Type is using the KimNonDataDictionaryAttributeDefinition class
      KULRICE-145Change JSPs and Tags to use correct paths
      KULRICE-5153Implement AdHoc Recipients tag for documents
      KULRICE-4964replace tabTop tag with something better
      KULRICE-6660KRAD tldheader.jsp contains old KNS tags
      KULRICE-5777Lookup does not return value in Firefox 7.
    • Rice Module:
      KNS
    • Application Requirement:
      KC

      Description

      The checkTabHighlight is recursive. On Jetty 7 this tag causes a FileNotFoundException during jsp compilation. This issue only shows up on Linux (not Windows). The workaround appears to be not using the kul alias but referring directly to the tag location. We also confirmed that this workaround does not break tomcat 6. See the stacktrace below:

      Problem accessing /kc-dev/kew/DocumentSearch.do. Reason:

      no such file:
      /home/dpace/src/kc_project/target/tmp/jsp/org/apache/jsp/tag/web/kr/checkTabHighlight_tag.class

      Caused by:

      java.io.FileNotFoundException: no such file:
      /home/dpace/src/kc_project/target/tmp/jsp/org/apache/jsp/tag/web/kr/checkTabHighlight_tag.class
      at org.apache.jasper.compiler.SmapUtil$SDEInstaller.<init>(SmapUtil.java:258)
      at org.apache.jasper.compiler.SmapUtil$SDEInstaller.install(SmapUtil.java:230)
      at org.apache.jasper.compiler.SmapUtil.installSmap(SmapUtil.java:158)
      at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:390)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:437)
      at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:608)
      at org.apache.jasper.servlet.JspServletWrapper.loadTagFile(JspServletWrapper.java:261)
      at org.apache.jasper.compiler.TagFileProcessor.loadTagFile(TagFileProcessor.java:683)
      at org.apache.jasper.compiler.TagFileProcessor.access$000(TagFileProcessor.java:88)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:739)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1501)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2341)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:743)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1501)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2341)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:743)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1501)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2341)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:743)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1501)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2341)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:743)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1501)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2341)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:743)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1501)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2341)
      at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2347)
      at org.apache.jasper.compiler.Node$Root.accept(Node.java:498)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291)
      at org.apache.jasper.compiler.TagFileProcessor.loadTagFiles(TagFileProcessor.java:757)
      at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:222)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:435)
      at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:608)
      at org.apache.jasper.servlet.JspServletWrapper.loadTagFile(JspServletWrapper.java:261)
      at org.apache.jasper.compiler.TagFileProcessor.loadTagFile(TagFileProcessor.java:683)
      at org.apache.jasper.compiler.TagFileProcessor.access$000(TagFileProcessor.java:88)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:739)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1501)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2341)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:743)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1501)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2341)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:743)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1501)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2341)
      at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2347)
      at org.apache.jasper.compiler.Node$Root.accept(Node.java:498)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291)
      at org.apache.jasper.compiler.TagFileProcessor.loadTagFiles(TagFileProcessor.java:757)
      at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:222)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:435)
      at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:608)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:360)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:486)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:380)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:527)
      at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:423)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
      at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:493)
      at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
      at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:924)
      at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:358)
      at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
      at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:860)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
      at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:346)
      at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:115)
      at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
      at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
      at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
      at org.kuali.rice.kns.web.struts.action.KualiRequestProcessor.process(KualiRequestProcessor.java:101)
      at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
      at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:527)
      at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:423)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
      at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:493)
      at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
      at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:924)
      at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:358)
      at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
      at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:860)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
      at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:346)
      at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:115)
      at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
      at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
      at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
      at org.kuali.rice.kns.web.struts.action.KualiRequestProcessor.process(KualiRequestProcessor.java:101)
      at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
      at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:527)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1216)
      at org.kuali.kra.web.filter.RequestLoggingFilter.doFilter(RequestLoggingFilter.java:95)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
      at org.kuali.rice.kew.web.UserLoginFilter.doFilter(UserLoginFilter.java:92)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
      at org.kuali.rice.kew.web.BootstrapFilterChain.doFilter(BootstrapFilter.java:305)
      at org.kuali.rice.kew.web.DummyLoginFilter.doFilter(DummyLoginFilter.java:88)
      at org.kuali.rice.kew.web.BootstrapFilterChain.doFilter(BootstrapFilter.java:298)
      at org.kuali.rice.kew.web.BootstrapFilter.doFilter(BootstrapFilter.java:166)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
      at org.kuali.kra.web.filter.PerformanceLoggingFilter.doFilter(PerformanceLoggingFilter.java:72)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
      at org.kuali.kra.web.filter.SessionExpiredFilter.doFilter(SessionExpiredFilter.java:44)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
      at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
      at org.kuali.rice.kns.web.filter.HideWebInfFilter.doFilter(HideWebInfFilter.java:66)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
      at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:421)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
      at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:493)
      at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
      at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:924)
      at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:358)
      at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
      at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:860)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
      at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:245)
      at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
      at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113)
      at org.eclipse.jetty.server.Server.handle(Server.java:335)
      at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:588)
      at org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1029)
      at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:549)
      at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:211)
      at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:418)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:476)
      at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:436)
      at java.lang.Thread.run(Thread.java:636)

        Issue Links

          Activity

          Hide
          Travis Schneeberger added a comment -

          What's also interesting is even though Jetty is using jasper compilers this problem does not occur in tomcat 6.

          Show
          Travis Schneeberger added a comment - What's also interesting is even though Jetty is using jasper compilers this problem does not occur in tomcat 6.
          Hide
          Travis Schneeberger added a comment -

          This also happens with the rowDisplay.tag. I tried a workaround by using a different tag alias for the recursive call - not sure if this corrects the problem.

          Show
          Travis Schneeberger added a comment - This also happens with the rowDisplay.tag. I tried a workaround by using a different tag alias for the recursive call - not sure if this corrects the problem.

            People

            • Assignee:
              Travis Schneeberger
              Reporter:
              Travis Schneeberger
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Structure Helper Panel