Current logic is like:
catch (ListenerExecutionFailedException ex) {
// Continue to process, otherwise re-throw
if (ex.getCause() instanceof NoSuchMethodException) {
throw new FatalListenerExecutionException("Invalid listener", ex);
}
}
However, in case of @RabbitHandler we do have in the DelegatingInvocableHandler:
handler = findHandlerForPayload(payloadClass);
if (handler == null) {
throw new IllegalStateException(
new NoSuchMethodException("No listener method found in " + this.bean.getClass().getName()
+ " for " + payloadClass));
}
So, the listener container is not stopped for such a situation as it is intended.
Current logic is like:
However, in case of
@RabbitHandlerwe do have in theDelegatingInvocableHandler:So, the listener container is not stopped for such a situation as it is intended.