You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by bd...@apache.org on 2014/11/12 18:37:42 UTC
svn commit: r1638883 -
/sling/trunk/bundles/servlets/resolver/src/main/java/org/apache/sling/servlets/resolver/internal/SlingServletResolver.java
Author: bdelacretaz
Date: Wed Nov 12 17:37:42 2014
New Revision: 1638883
URL: http://svn.apache.org/r1638883
Log:
SLING-4143 - we're catching all Throwable anyway
Modified:
sling/trunk/bundles/servlets/resolver/src/main/java/org/apache/sling/servlets/resolver/internal/SlingServletResolver.java
Modified: sling/trunk/bundles/servlets/resolver/src/main/java/org/apache/sling/servlets/resolver/internal/SlingServletResolver.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/servlets/resolver/src/main/java/org/apache/sling/servlets/resolver/internal/SlingServletResolver.java?rev=1638883&r1=1638882&r2=1638883&view=diff
==============================================================================
--- sling/trunk/bundles/servlets/resolver/src/main/java/org/apache/sling/servlets/resolver/internal/SlingServletResolver.java (original)
+++ sling/trunk/bundles/servlets/resolver/src/main/java/org/apache/sling/servlets/resolver/internal/SlingServletResolver.java Wed Nov 12 17:37:42 2014
@@ -756,7 +756,7 @@ public class SlingServletResolver
}
// Let the error handler servlet process the request and
- // forward exceptions (but not throwable) if it fails.
+ // forward all exceptions if it fails.
// Before SLING-4143 we only forwarded IOExceptions.
try {
errorHandler.service(request, response);
@@ -764,16 +764,13 @@ public class SlingServletResolver
response.flushBuffer();
// close the response (SLING-2724)
response.getWriter().close();
- } catch (final IOException ioe) {
- throw ioe;
- } catch (final Exception e) {
- throw new IOException("Error handling servlet failed", e);
- } catch (final Error r) {
- throw r;
} catch (final Throwable t) {
LOGGER.error("Calling the error handler resulted in an error", t);
LOGGER.error("Original error " + request.getAttribute(SlingConstants.ERROR_EXCEPTION_TYPE),
(Throwable) request.getAttribute(SlingConstants.ERROR_EXCEPTION));
+ final IOException x = new IOException("Error handler failed: " + t.getClass().getName());
+ x.initCause(t);
+ throw x;
}
}