Skip to content

Commit 035c8b1

Browse files
committed
Reduces noise in the logs
1 parent 28bc351 commit 035c8b1

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
import java.util.*;
4141
import java.util.concurrent.ConcurrentHashMap;
4242
import java.util.concurrent.ConcurrentMap;
43+
import java.util.concurrent.atomic.AtomicBoolean;
4344
import java.util.regex.Pattern;
4445

4546

@@ -53,6 +54,9 @@ public class OgnlUtil {
5354

5455
private static final Logger LOG = LogManager.getLogger(OgnlUtil.class);
5556

57+
// Flag used to reduce flooding logs with WARNs about using DevMode excluded packages
58+
private final AtomicBoolean warnReported = new AtomicBoolean(false);
59+
5660
private final ConcurrentMap<String, Object> expressions = new ConcurrentHashMap<>();
5761
private final ConcurrentMap<Class<?>, BeanInfo> beanInfoCache = new ConcurrentHashMap<>();
5862
private TypeConverter defaultConverter;
@@ -806,7 +810,10 @@ protected Map<String, Object> createDefaultContext(Object root, ClassResolver cl
806810
memberAccess.setDisallowProxyMemberAccess(disallowProxyMemberAccess);
807811

808812
if (devMode) {
809-
LOG.warn("Working in devMode, using devMode excluded classes and packages!");
813+
if (!warnReported.get()) {
814+
warnReported.set(true);
815+
LOG.warn("Working in devMode, using devMode excluded classes and packages!");
816+
}
810817
memberAccess.setExcludedClasses(devModeExcludedClasses);
811818
memberAccess.setExcludedPackageNamePatterns(devModeExcludedPackageNamePatterns);
812819
memberAccess.setExcludedPackageNames(devModeExcludedPackageNames);

0 commit comments

Comments
 (0)