Hi Christopher,

Thanks for reporting this issue and for pointing to a solution. We
already have a related bug report here:
http://restlet.tigris.org/issues/show_bug.cgi?id=367

We'll fix this ASAP and release 1.0.6 during the week.

Best regards,
Jerome


2007/10/8, Christopher Sun <[EMAIL PROTECTED]>:
>
>
>
>
> One more observation,
>
>
>
> If I add an "already-done?" check to ApplicationHelper.java in the start()
> method, these seems to alleviate the symptoms, by preventing the N number of
> Tunnel, Status, and Log filters from getting added to the same application
> object on every Restlet call.
>
>
>
> +cs
>
>
>
>  ________________________________
>
>
> From: Christopher Sun [mailto:[EMAIL PROTECTED]
>  Sent: Monday, October 08, 2007 6:55 AM
>  To: [email protected]
>  Subject: StackOverflow on Restlet Exception
>
>
>
>
> Quick question using Restlet 1.0.5, Java 1.5, Tomcat 5.5.28 and the Spring
> Restlet Extensions: On any exception inside of a restlet handle() method, we
> are receiving a stack overflow due how Restlet's is handling the exception.
> We understand what the exception is (Connection pooling issue in the
> JDBC/DAO layer) and we have our solution for it, but we're not particularly
> happy that the Restlet framework goes through an infinite level of
> StatusFilter, doHandle, handle, method calls on any exception.
>
>
>
> Is there anyone familiar with how we can prevent this from happening?
>
>
>
> Oct 5, 2007 8:39:23 AM com.noelios.restlet.StatusFilter
> getStatus
>
> SEVERE: Unhandled exception or error intercepted
>
> java.lang.StackOverflowError
>
>         at
> java.security.AccessController.doPrivileged(Native Method)
>
>         at java.io.PrintWriter.<init>(PrintWriter.java:77)
>
>         at java.io.PrintWriter.<init>(PrintWriter.java:61)
>
>         at
> java.util.logging.SimpleFormatter.format(SimpleFormatter.java:71)
>
>         at
> java.util.logging.StreamHandler.publish(StreamHandler.java:179)
>
>         at
> java.util.logging.ConsoleHandler.publish(ConsoleHandler.java:88)
>
>         at java.util.logging.Logger.log(Logger.java:452)
>
>         at java.util.logging.Logger.doLog(Logger.java:474)
>
>         at java.util.logging.Logger.log(Logger.java:563)
>
>         at
> com.noelios.restlet.StatusFilter.getStatus(StatusFilter.java:183)
>
>         at
> com.noelios.restlet.application.ApplicationStatusFilter.getStatus(ApplicationStatusFilter.java:76)
>
>         at
> com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:89)
>
>         at org.restlet.Filter.handle(Filter.java:134)
>
>         at org.restlet.Filter.doHandle(Filter.java:105)
>
>         at org.restlet.Filter.handle(Filter.java:134)
>
>         at org.restlet.Filter.doHandle(Filter.java:105)
>
>         at org.restlet.Filter.handle(Filter.java:134)
>
>         at org.restlet.Filter.doHandle(Filter.java:105)
>
>         at
> com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:87)
>
>         at org.restlet.Filter.handle(Filter.java:134)
>
>         at org.restlet.Filter.doHandle(Filter.java:105)
>
>         at org.restlet.Filter.handle(Filter.java:134)
>
>         at org.restlet.Filter.doHandle(Filter.java:105)
>
>         at org.restlet.Filter.handle(Filter.java:134)
>
>         at org.restlet.Filter.doHandle(Filter.java:105)
>
>         at
> com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:87)
>
>         at org.restlet.Filter.handle(Filter.java:134)
>
>         at org.restlet.Filter.doHandle(Filter.java:105)
>
>         at org.restlet.Filter.handle(Filter.java:134)
>
>         at org.restlet.Filter.doHandle(Filter.java:105)
>
>         at org.restlet.Filter.handle(Filter.java:134)
>
>         at org.restlet.Filter.doHandle(Filter.java:105)
>
>         at
> com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:87)

Reply via email to