XMLBEANS-564 - SAXHelper creates noisy logging with stacktraces
git-svn-id: https://svn.apache.org/repos/asf/xmlbeans/trunk@1889135 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/main/java/org/apache/xmlbeans/impl/common/SAXHelper.java b/src/main/java/org/apache/xmlbeans/impl/common/SAXHelper.java
index 8c88bf2..5791805 100644
--- a/src/main/java/org/apache/xmlbeans/impl/common/SAXHelper.java
+++ b/src/main/java/org/apache/xmlbeans/impl/common/SAXHelper.java
@@ -94,9 +94,17 @@
//"com.sun.org.apache.xerces.internal.util.SecurityManager",
"org.apache.xerces.util.SecurityManager"
}) {
+ Class<?> clazz;
try {
- Object mgr = Class.forName(securityManagerClassName).getDeclaredConstructor().newInstance();
- Method setLimit = mgr.getClass().getMethod("setEntityExpansionLimit", Integer.TYPE);
+ clazz = Class.forName(securityManagerClassName);
+ } catch (Throwable e) { // NOSONAR
+ // xerces is not available on class-/modulepath
+ continue;
+ }
+
+ try {
+ Object mgr = clazz.getDeclaredConstructor().newInstance();
+ Method setLimit = clazz.getMethod("setEntityExpansionLimit", Integer.TYPE);
setLimit.invoke(mgr, options.getEntityExpansionLimit());
xmlReader.setProperty(XMLBeansConstants.SECURITY_MANAGER, mgr);
// Stop once one can be setup without error