From 750930fa25dde35fcab82f9a210e42ce02d65d7d Mon Sep 17 00:00:00 2001 From: Rossen Stoyanchev Date: Tue, 27 Aug 2013 15:05:34 -0400 Subject: [PATCH] Fix bug with the order of messaging arg resolvers --- .../simp/handler/AnnotationMethodMessageHandler.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/spring-messaging/src/main/java/org/springframework/messaging/simp/handler/AnnotationMethodMessageHandler.java b/spring-messaging/src/main/java/org/springframework/messaging/simp/handler/AnnotationMethodMessageHandler.java index 43314c04f7..47a43af366 100644 --- a/spring-messaging/src/main/java/org/springframework/messaging/simp/handler/AnnotationMethodMessageHandler.java +++ b/spring-messaging/src/main/java/org/springframework/messaging/simp/handler/AnnotationMethodMessageHandler.java @@ -173,9 +173,6 @@ public class AnnotationMethodMessageHandler implements MessageHandler, Applicati initHandlerMethods(); - // Annotation-based argument resolution - this.argumentResolvers.addResolver(new MessageBodyMethodArgumentResolver(this.messageConverter)); - // Type-based argument resolution this.argumentResolvers.addResolver(new PrincipalMethodArgumentResolver()); this.argumentResolvers.addResolver(new MessageMethodArgumentResolver()); @@ -183,6 +180,9 @@ public class AnnotationMethodMessageHandler implements MessageHandler, Applicati // custom arguments this.argumentResolvers.addResolvers(this.customArgumentResolvers); + // catch-all argument resolver + this.argumentResolvers.addResolver(new MessageBodyMethodArgumentResolver(this.messageConverter)); + // Annotation-based return value types this.returnValueHandlers.addHandler(new ReplyToMethodReturnValueHandler(this.dispatchMessagingTemplate)); this.returnValueHandlers.addHandler(new SubscriptionMethodReturnValueHandler(this.webSocketSessionMessagingTemplate));