rdonkin 2002/11/19 13:51:06 Modified: beanutils/src/java/org/apache/commons/beanutils MethodUtils.java Log: Added code to prevent excessive logging at warn level when running in restrictive security environment (bug #14394). Revision Changes Path 1.16 +18 -6 jakarta-commons/beanutils/src/java/org/apache/commons/beanutils/MethodUtils.java Index: MethodUtils.java =================================================================== RCS file: /home/cvs/jakarta-commons/beanutils/src/java/org/apache/commons/beanutils/MethodUtils.java,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- MethodUtils.java 25 Oct 2002 00:21:01 -0000 1.15 +++ MethodUtils.java 19 Nov 2002 21:51:06 -0000 1.16 @@ -101,6 +101,8 @@ * All logging goes through this logger */ private static Log log = LogFactory.getLog(MethodUtils.class); + /** Only log warning about accessibility work around once */ + private static boolean loggedAccessibleWarning = false; /** An empty class array */ private static final Class[] emptyClassArray = new Class[0]; @@ -577,9 +579,14 @@ } catch (SecurityException se) { // log but continue just in case the method.invoke works anyway - log.warn( - "Cannot setAccessible on method. Therefore cannot use jvm access bug workaround.", - se); + if (!loggedAccessibleWarning) { + log.warn( + "Cannot use JVM pre-1.4 access bug workaround die to restrictive security manager."); + loggedAccessibleWarning = true; + } + log.debug( + "Cannot setAccessible on method. Therefore cannot use jvm access bug workaround.", + se); } return method; @@ -633,9 +640,14 @@ } catch (SecurityException se) { // log but continue just in case the method.invoke works anyway - log.warn( - "Cannot setAccessible on method. Therefore cannot use jvm access bug workaround.", - se); + if (!loggedAccessibleWarning) { + log.warn( + "Cannot use JVM pre-1.4 access bug workaround die to restrictive security manager."); + loggedAccessibleWarning = true; + } + log.debug( + "Cannot setAccessible on method. Therefore cannot use jvm access bug workaround.", + se); } return method; }
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>