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

rowDisplay.tag doesn't work properly in Tomcat 5.5.30

    Details

    • Type: Bug Fix Bug Fix
    • Status: Closed Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.0.3
    • Component/s: User Interface
    • Labels:
      None
    • Similar issues:
      KULRICE-3383KualiIncidentReport.jsp doesn't work on Tomcat 5.5.27+/Tomcat 6.0 (and possibly other screens?)
      KULRICE-2649Verify that our jsps and tag libraries are using quotes properly and work successfully in Tomcat 5.5.27
      KULRICE-4607DocumentHeaderDaoProxy doesn't check module properly
      KULRICE-4617Rice logoff does not work on tomcat
      KULRICE-5843JSP Errors in Tomcat 7
      KULRICE-4599Test Kuali Rice standalone server in Tomcat 6
      KULRICE-10219Metadata merging from Spring configuration does not appear to be working properly
      KULRICE-7658commons-beanutils doesn't properly handle subclassing
      KULRICE-8270KRMS Agenda Editor: Proposition Tree of Rule does not work properly
      KULRICE-4138EditablePropertiesHistoryHolder causes session serialization exception on tomcat start/stop
    • Rice Module:
      KNS
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Review Completed

      Description

      It has been confirmed that Rice does not work properly in Tomcat 5.5.30. What most people are seeing when they go to a lookup is that all of the search criteria fields are missing and they just see the "search" buttons.

      This is because it appears that rowDisplay.tag is not working correctly between Tomcat 5.5.29 and 5.5.30. It's not apparent to me though what change in 5.5.30 might have caused this.

      Additionally, at least for me I get a stack trace when I first try to load a lookup page, the second time the page loads but the search criteria is missing. Here is the stacktrace for the exception that I was seeing:

      2010-09-15 00:07:43,031 [http-8080-Processor24] ERROR org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/kr-dev].[jsp] - Servlet.service() for servlet jsp threw exception
      java.io.FileNotFoundException: no such file: /java/servers/apache-tomcat-5.5.30/work/Catalina/localhost/kr-dev/org/apache/jsp/tag/web/kr/rowDisplay_tag$Helper.class
      at org.apache.jasper.compiler.SmapUtil$SDEInstaller.<init>(SmapUtil.java:253)
      at org.apache.jasper.compiler.SmapUtil$SDEInstaller.install(SmapUtil.java:241)
      at org.apache.jasper.compiler.SmapUtil.installSmap(SmapUtil.java:165)
      at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:466)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:319)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:298)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
      at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:565)
      at org.apache.jasper.servlet.JspServletWrapper.loadTagFile(JspServletWrapper.java:207)
      at org.apache.jasper.compiler.TagFileProcessor.loadTagFile(TagFileProcessor.java:566)
      at org.apache.jasper.compiler.TagFileProcessor.access$000(TagFileProcessor.java:50)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:617)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1442)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2166)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2216)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:621)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1442)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2166)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2216)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:621)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1442)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2166)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2216)
      at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2222)
      at org.apache.jasper.compiler.Node$Root.accept(Node.java:457)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2166)
      at org.apache.jasper.compiler.TagFileProcessor.loadTagFiles(TagFileProcessor.java:635)
      at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:200)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:317)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:298)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
      at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:565)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:309)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:659)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:457)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:395)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:311)
      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:99)
      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:627)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at edu.iu.uis.eden.web.IUUserAccessFilter.doFilter(IUUserAccessFilter.java:80)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.kuali.rice.kew.web.UserLoginFilter.doFilter(UserLoginFilter.java:92)
      at edu.iu.uis.rice.web.IUUserLoginFilter.doFilter(IUUserLoginFilter.java:127)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.kuali.rice.kew.web.BootstrapFilterChain.doFilter(BootstrapFilter.java:305)
      at edu.iu.uis.cas.filter.CASFilter.redirectOrForwardChain(CASFilter.java:488)
      at edu.iu.uis.cas.filter.CASFilter.doFilterUnsynchronized(CASFilter.java:422)
      at edu.iu.uis.cas.filter.CASFilter.doFilter(CASFilter.java:401)
      at org.kuali.rice.kew.web.BootstrapFilterChain.doFilter(BootstrapFilter.java:298)
      at org.kuali.rice.kew.web.BootstrapFilter.doFilter(BootstrapFilter.java:166)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.kuali.rice.kns.web.filter.HideWebInfFilter.doFilter(HideWebInfFilter.java:66)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at edu.iu.uis.rice.web.IUTransactionFilter.doFilter(IUTransactionFilter.java:58)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)
      at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
      at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
      at java.lang.Thread.run(Thread.java:637)
      2010-09-15 00:07:43,035 [http-8080-Processor24] ERROR org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/kr-dev].[action] - Servlet.service() for servlet action threw exception
      java.io.FileNotFoundException: no such file: /java/servers/apache-tomcat-5.5.30/work/Catalina/localhost/kr-dev/org/apache/jsp/tag/web/kr/rowDisplay_tag$Helper.class
      at org.apache.jasper.compiler.SmapUtil$SDEInstaller.<init>(SmapUtil.java:253)
      at org.apache.jasper.compiler.SmapUtil$SDEInstaller.install(SmapUtil.java:241)
      at org.apache.jasper.compiler.SmapUtil.installSmap(SmapUtil.java:165)
      at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:466)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:319)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:298)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
      at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:565)
      at org.apache.jasper.servlet.JspServletWrapper.loadTagFile(JspServletWrapper.java:207)
      at org.apache.jasper.compiler.TagFileProcessor.loadTagFile(TagFileProcessor.java:566)
      at org.apache.jasper.compiler.TagFileProcessor.access$000(TagFileProcessor.java:50)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:617)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1442)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2166)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2216)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:621)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1442)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2166)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2216)
      at org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:621)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1442)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2166)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2216)
      at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2222)
      at org.apache.jasper.compiler.Node$Root.accept(Node.java:457)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2166)
      at org.apache.jasper.compiler.TagFileProcessor.loadTagFiles(TagFileProcessor.java:635)
      at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:200)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:317)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:298)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
      at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:565)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:309)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:659)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:457)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:395)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:311)
      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:99)
      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:627)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at edu.iu.uis.eden.web.IUUserAccessFilter.doFilter(IUUserAccessFilter.java:80)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.kuali.rice.kew.web.UserLoginFilter.doFilter(UserLoginFilter.java:92)
      at edu.iu.uis.rice.web.IUUserLoginFilter.doFilter(IUUserLoginFilter.java:127)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.kuali.rice.kew.web.BootstrapFilterChain.doFilter(BootstrapFilter.java:305)
      at edu.iu.uis.cas.filter.CASFilter.redirectOrForwardChain(CASFilter.java:488)
      at edu.iu.uis.cas.filter.CASFilter.doFilterUnsynchronized(CASFilter.java:422)
      at edu.iu.uis.cas.filter.CASFilter.doFilter(CASFilter.java:401)
      at org.kuali.rice.kew.web.BootstrapFilterChain.doFilter(BootstrapFilter.java:298)
      at org.kuali.rice.kew.web.BootstrapFilter.doFilter(BootstrapFilter.java:166)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.kuali.rice.kns.web.filter.HideWebInfFilter.doFilter(HideWebInfFilter.java:66)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at edu.iu.uis.rice.web.IUTransactionFilter.doFilter(IUTransactionFilter.java:58)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)
      at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
      at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
      at java.lang.Thread.run(Thread.java:637)

        Issue Links

          Activity

          Hide
          Travis Schneeberger added a comment -

          Peter, I know this jira is specifically for the rowDisplay.tag but the checkTabHighlight.tag also has the same problem. I tried a fix in this tag like rowDisplay but probably my fix also doesn't work here. Could you put the workaround in for this tag and test it since you are running linux?

          Show
          Travis Schneeberger added a comment - Peter, I know this jira is specifically for the rowDisplay.tag but the checkTabHighlight.tag also has the same problem. I tried a fix in this tag like rowDisplay but probably my fix also doesn't work here. Could you put the workaround in for this tag and test it since you are running linux?
          Hide
          Eric Westfall added a comment -

          Also, we did get a response back on the Tomcat bug. Looks like this problem is resolved in Tomcat 6, and they will port the fix back to tomcat 5.5.x (I'm assuming for a 5.5.32 release?)

          Show
          Eric Westfall added a comment - Also, we did get a response back on the Tomcat bug. Looks like this problem is resolved in Tomcat 6, and they will port the fix back to tomcat 5.5.x (I'm assuming for a 5.5.32 release?)
          Hide
          Peter Giles (Inactive) added a comment -

          Eric, last I heard on this was exactly what you said, but no more. Here's Mark Thomas' last comment on the issue:
          "This was previously fixed in 6.0.x. I back-ported the relevant patches to 5.5.x and they do fix the issue. The combined patch has been proposed for 5.5.x"

          Travis, I'll look into it today.

          Show
          Peter Giles (Inactive) added a comment - Eric, last I heard on this was exactly what you said, but no more. Here's Mark Thomas' last comment on the issue: "This was previously fixed in 6.0.x. I back-ported the relevant patches to 5.5.x and they do fix the issue. The combined patch has been proposed for 5.5.x" Travis, I'll look into it today.
          Hide
          Peter Giles (Inactive) added a comment -

          added the same hack to checkTabHighlight.tag, resolving.

          Show
          Peter Giles (Inactive) added a comment - added the same hack to checkTabHighlight.tag, resolving.
          Hide
          Rice-CI User (Inactive) added a comment -

          Integrated in rice-trunk-nightly #74 (See http://ci.rice.kuali.org/job/rice-trunk-nightly/74/)
          KULRICE-5161: treeNode.tag exhibits recursive tag problem on Linux in Jetty 7.4.1

          Fixed w/ same workaround used for KULRICE-4569, which is to call another tag which calls back to the first tag via an imported JSP

          Show
          Rice-CI User (Inactive) added a comment - Integrated in rice-trunk-nightly #74 (See http://ci.rice.kuali.org/job/rice-trunk-nightly/74/ ) KULRICE-5161 : treeNode.tag exhibits recursive tag problem on Linux in Jetty 7.4.1 Fixed w/ same workaround used for KULRICE-4569 , which is to call another tag which calls back to the first tag via an imported JSP

            People

            • Assignee:
              Peter Giles (Inactive)
              Reporter:
              Eric Westfall
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Structure Helper Panel