Uploaded image for project: 'Groovy'
  1. Groovy
  2. GROOVY-210

System.out and classloader issues under Tomcat

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.0-beta-5
    • Fix Version/s: 1.0-JSR-3
    • Component/s: Groovlet / GSP
    • Labels:
      None
    • Environment:
      j2sdk1.4.2_03, Tomcat-5.0.18, latest CVS build of Groovy

      Description

      I'm seeing what seems to be a regression between Groovy-1.0-beta-3 and Groovy-1.0-beta-4-SNAPSHOT (built off the absolute latest CVS). I'm using a Groovy script to assemble a Picocontainer under the Nanocontainer servlet setup in web.xml ( See... http://docs.codehaus.org/display/NANO/NanoContainer+Servlet ). Configuring as described in that doc works fine under both beta3 and beta4-snapshot except when trying to do a System.out.println("I got here") debugging statement. With beta3, I see the debugging output just fine under Tomcat. With beta4-snapshot, I get the following exception which appears to be some classloading issue. Hopefully this will be enough info for the Groovy developers to determine the cause and fix the issue....

      2004-02-20 01:18:11 StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exception
      java.lang.NoClassDefFoundError: org/apache/tomcat/util/log/SystemLogHandler
      at org.apache.tomcat.util.log.SystemLogHandler$GroovyReflector.invoke(SystemLogHandler$GroovyReflector.java)
      at groovy.lang.MetaMethod.invoke(MetaMethod.java:84)
      at groovy.lang.MetaClass.doMethodInvoke(MetaClass.java:830)
      at groovy.lang.MetaClass.invokeMethod(MetaClass.java:242)
      at org.codehaus.groovy.runtime.Invoker.invokeMethod(Invoker.java:130)
      at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:101)
      at nanocontainer.run(nanocontainer.groovy:15)
      at org.nanocontainer.script.groovy.GroovyContainerBuilder.createContainerFromScript(GroovyContainerBuilder.java:57)
      at org.nanocontainer.script.ScriptedContainerBuilder.createContainer(ScriptedContainerBuilder.java:37)
      at org.nanocontainer.integrationkit.LifecycleContainerBuilder.buildContainer(LifecycleContainerBuilder.java:24)
      at org.nanocontainer.servlet.ServletRequestContainerLauncher.startContainer(ServletRequestContainerLauncher.java:48)
      at org.nanocontainer.servlet.ServletRequestContainerFilter.doFilter(ServletRequestContainerFilter.java:36)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:233)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
      at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:195)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972)
      at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700)
      at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
      at java.lang.Thread.run(Thread.java:534)

      Jake

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                blackdrag Jochen Theodorou
                Reporter:
                hoju Jacob Kjome
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: