From 9761af9ad8bf67a78937800128ddf3f244bab9a6 Mon Sep 17 00:00:00 2001 From: Juergen Hoeller Date: Fri, 15 Jan 2016 17:01:58 +0100 Subject: [PATCH] Validate @RequestMapping methods on AOP proxies Issue: SPR-13842 --- .../web/servlet/handler/AbstractHandlerMethodMapping.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/handler/AbstractHandlerMethodMapping.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/handler/AbstractHandlerMethodMapping.java index e6657082f1..c0daff60dd 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/handler/AbstractHandlerMethodMapping.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/handler/AbstractHandlerMethodMapping.java @@ -31,6 +31,7 @@ import java.util.concurrent.locks.ReentrantReadWriteLock; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; +import org.springframework.aop.support.AopUtils; import org.springframework.beans.factory.BeanFactoryUtils; import org.springframework.beans.factory.InitializingBean; import org.springframework.core.MethodIntrospector; @@ -223,7 +224,9 @@ public abstract class AbstractHandlerMethodMapping extends AbstractHandlerMap logger.debug(methods.size() + " request handler methods found on " + userType + ": " + methods); } for (Map.Entry entry : methods.entrySet()) { - registerHandlerMethod(handler, entry.getKey(), entry.getValue()); + Method invocableMethod = AopUtils.selectInvocableMethod(entry.getKey(), userType); + T mapping = entry.getValue(); + registerHandlerMethod(handler, invocableMethod, mapping); } }