From 1e07468d20c49baeb441425c7d0df053cb5d3cd1 Mon Sep 17 00:00:00 2001 From: Sebastien Deleuze Date: Wed, 26 Jul 2017 15:57:57 +0200 Subject: [PATCH] Prevent warning about final private methods in CglibAopProxy Issue: SPR-15820 --- .../java/org/springframework/aop/framework/CglibAopProxy.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/spring-aop/src/main/java/org/springframework/aop/framework/CglibAopProxy.java b/spring-aop/src/main/java/org/springframework/aop/framework/CglibAopProxy.java index b82eb09b4d6..0d04031fb3e 100644 --- a/spring-aop/src/main/java/org/springframework/aop/framework/CglibAopProxy.java +++ b/spring-aop/src/main/java/org/springframework/aop/framework/CglibAopProxy.java @@ -257,7 +257,7 @@ class CglibAopProxy implements AopProxy, Serializable { Method[] methods = proxySuperClass.getDeclaredMethods(); for (Method method : methods) { int mod = method.getModifiers(); - if (!Modifier.isStatic(mod)) { + if (!Modifier.isStatic(mod) && !Modifier.isPrivate(mod)) { if (Modifier.isFinal(mod)) { if (implementsInterface(method, ifcs)) { logger.warn("Unable to proxy interface-implementing method [" + method + "] because " + @@ -267,7 +267,7 @@ class CglibAopProxy implements AopProxy, Serializable { "Calls to this method will NOT be routed to the target instance and " + "might lead to NPEs against uninitialized fields in the proxy instance."); } - else if (!Modifier.isPublic(mod) && !Modifier.isProtected(mod) && !Modifier.isPrivate(mod) && + else if (!Modifier.isPublic(mod) && !Modifier.isProtected(mod) && proxyClassLoader != null && proxySuperClass.getClassLoader() != proxyClassLoader) { logger.info("Method [" + method + "] is package-visible across different ClassLoaders " + "and cannot get proxied via CGLIB: Declare this method as public or protected " +