Defensive catching of any Throwable subclasses instead of just Error

Issue: SPR-14329
This commit is contained in:
Juergen Hoeller
2016-06-04 00:17:20 +02:00
parent f657952cee
commit a9fda3e7e2
5 changed files with 11 additions and 11 deletions

View File

@@ -126,7 +126,7 @@ public abstract class AbstractMessageChannel implements MessageChannel, Intercep
}
throw new MessageDeliveryException(message,"Failed to send message to " + this, ex);
}
catch (Error err) {
catch (Throwable err) {
MessageDeliveryException ex2 =
new MessageDeliveryException(message, "Failed to send message to " + this, err);
chain.triggerAfterSendCompletion(message, this, sent, ex2);

View File

@@ -143,7 +143,7 @@ public class ExecutorSubscribableChannel extends AbstractSubscribableChannel {
String description = "Failed to handle " + message + " to " + this + " in " + this.messageHandler;
throw new MessageDeliveryException(message, description, ex);
}
catch (Error err) {
catch (Throwable err) {
String description = "Failed to handle " + message + " to " + this + " in " + this.messageHandler;
MessageDeliveryException ex2 = new MessageDeliveryException(message, description, err);
triggerAfterMessageHandled(message, ex2);