Hi Colm.  Someone else posted a similar message the other day.
Throwing out a wild and unfounded guess, perhaps the LoggingService is
being requested after it has already been shut down by
TurbineResources (Turbine's ServiceBroker implementation).  I have a
small patch against CVS HEAD which may address the issue.  Would you
be able to test it out?  Additionally, Jason is cooking up a makeover
of the services framework that may also address this issue.

Index: TurbineServices.java
===================================================================
RCS file: 
/home/cvs/jakarta-turbine/src/java/org/apache/turbine/services/TurbineServices.java,v
retrieving revision 1.28
diff -u -u -r1.28 TurbineServices.java
--- TurbineServices.java        2001/05/31 06:58:50     1.28
+++ TurbineServices.java        2001/06/12 15:49:27
@@ -410,6 +410,14 @@
      */
     private final LoggingService getLogger()
     {
-        return (LoggingService) getService(LoggingService.SERVICE_NAME);
+        try
+        {
+            return (LoggingService) getService(LoggingService.SERVICE_NAME);
+        }
+        catch (InstantiationException e)
+        {
+            // Possibly no logging service configured.
+            return null;
+        }
     }
 }


Colm McCartan <[EMAIL PROTECTED]> writes:

> I've built several test applications with the newapp framework and have noticed 
> the following problem with all of them (apart from newapp itself) across both 
> Catalina and Tomcat 3.2.1 (which I use for its performance). When the container 
> unloads the servlet either to close down or because of a recompile (with 
> reloadable=true in my server.xml) an exception is thrown which stops the 
> container correctly closing and restarting. Heres some of the log:
> 
> 2001-06-12 03:32:15 - ThreadPool: Caught exception executing 
> org.apache.tomcat.service.TcpWorkerThread@40afb9, terminating thread - 
> java.lang.StackOverflowError
>       at org.apache.turbine.services.BaseServiceBroker.getServiceInstance
> (BaseServiceBroker.java:311)
>       at org.apache.turbine.services.BaseServiceBroker.getService
> (BaseServiceBroker.java:260)
>       at org.apache.turbine.services.TurbineServices.notice
> (TurbineServices.java:344)
>       at org.apache.turbine.services.BaseServiceBroker.getService
> (BaseServiceBroker.java:267)
>       at org.apache.turbine.services.TurbineServices.notice
> (TurbineServices.java:344)
>       at org.apache.turbine.services.BaseServiceBroker.getService
> (BaseServiceBroker.java:267)
>       at org.apache.turbine.services.TurbineServices.notice
> (TurbineServices.java:344)
>       at org.apache.turbine.services.BaseServiceBroker.getService
> (BaseServiceBroker.java:267)
>       at org.apache.turbine.services.TurbineServices.notice
> (TurbineServices.java:344)
>       at org.apache.turbine.services.BaseServiceBroker.getService
> (BaseServiceBroker.java:267)
> 
> These last two calls (between BaseServiceBroker.getService and 
> TurbineServices.notice) are clearly in a loop which generates the StackOverflow 
> as these two fill the rest of the file...
> 
> Has anyone experienced this and found a workaround or know what i may have 
> managed to break?

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to