Author: fanningpj
Date: Fri Sep 7 15:22:22 2018
New Revision: 1840305
URL: http://svn.apache.org/viewvc?rev=1840305&view=rev
Log:
XMLBEANS-519 issue using firefly parser
Modified:
xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/DocumentHelper.java
Modified:
xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/DocumentHelper.java
URL:
http://svn.apache.org/viewvc/xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/DocumentHelper.java?rev=1840305&r1=1840304&r2=1840305&view=diff
==============================================================================
---
xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/DocumentHelper.java
(original)
+++
xmlbeans/trunk/src/common/org/apache/xmlbeans/impl/common/DocumentHelper.java
Fri Sep 7 15:22:22 2018
@@ -18,6 +18,7 @@ package org.apache.xmlbeans.impl.common;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Method;
+import java.util.concurrent.TimeUnit;
import javax.xml.XMLConstants;
import javax.xml.parsers.DocumentBuilder;
@@ -35,6 +36,7 @@ import org.xml.sax.SAXParseException;
public final class DocumentHelper {
private static XBLogger logger =
XBLogFactory.getLogger(DocumentHelper.class);
+ private static long lastLog;
private DocumentHelper() {}
@@ -130,12 +132,22 @@ public final class DocumentHelper {
} catch (ClassNotFoundException e) {
// continue without log, this is expected in some setups
} catch (Throwable e) { // NOSONAR - also catch things like
NoClassDefError here
- logger.log(XBLogger.WARN, "SAX Security Manager could not be
setup", e);
+ if(System.currentTimeMillis() > lastLog +
TimeUnit.MINUTES.toMillis(5)) {
+ logger.log(XBLogger.WARN, "DocumentBuilderFactory Security
Manager could not be setup [log suppressed for 5 minutes]", e);
+ lastLog = System.currentTimeMillis();
+ }
}
}
// separate old version of Xerces not found => use the builtin way of
setting the property
- dbf.setAttribute(XMLBeansConstants.ENTITY_EXPANSION_LIMIT,
options.getEntityExpansionLimit());
+ try {
+ dbf.setAttribute(XMLBeansConstants.ENTITY_EXPANSION_LIMIT,
options.getEntityExpansionLimit());
+ } catch (Throwable e) {
+ if(System.currentTimeMillis() > lastLog +
TimeUnit.MINUTES.toMillis(5)) {
+ logger.log(XBLogger.WARN, "DocumentBuilderFactory Entity
Expansion Limit could not be setup [log suppressed for 5 minutes]", e);
+ lastLog = System.currentTimeMillis();
+ }
+ }
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]