[jbossws-commits] JBossWS SVN: r9899 - common/trunk/src/main/java/org/jboss/wsf/common.

jbossws-commits at lists.jboss.org jbossws-commits at lists.jboss.org
Tue Apr 28 05:42:31 EDT 2009


Author: richard.opalka at jboss.com
Date: 2009-04-28 05:42:30 -0400 (Tue, 28 Apr 2009)
New Revision: 9899

Modified:
   common/trunk/src/main/java/org/jboss/wsf/common/DOMUtils.java
Log:
[JBWS-1582] envelopes can't contain DOCTYPE declaration

Modified: common/trunk/src/main/java/org/jboss/wsf/common/DOMUtils.java
===================================================================
--- common/trunk/src/main/java/org/jboss/wsf/common/DOMUtils.java	2009-04-28 09:41:45 UTC (rev 9898)
+++ common/trunk/src/main/java/org/jboss/wsf/common/DOMUtils.java	2009-04-28 09:42:30 UTC (rev 9899)
@@ -70,6 +70,8 @@
    private static Logger log = Logger.getLogger(DOMUtils.class);
 
    private static final String DISABLE_DEFERRED_NODE_EXPANSION = "org.jboss.ws.disable_deferred_node_expansion";
+   private static final String DEFER_NODE_EXPANSION_FEATURE = "http://apache.org/xml/features/dom/defer-node-expansion";
+   private static final String DISALLOW_DOCTYPE_DECL_FEATURE = "http://apache.org/xml/features/disallow-doctype-decl";
 
    // All elements created by the same thread are created by the same builder and belong to the same doc
    private static ThreadLocal<Document> documentThreadLocal = new ThreadLocal<Document>();
@@ -83,11 +85,9 @@
             factory.setNamespaceAware(true);
 
             boolean disableDeferredNodeExpansion = Boolean.getBoolean(DISABLE_DEFERRED_NODE_EXPANSION);
-            if (disableDeferredNodeExpansion == true)
-            {
-               factory.setFeature("http://apache.org/xml/features/dom/defer-node-expansion", false);
-            }
+            factory.setFeature(DEFER_NODE_EXPANSION_FEATURE, !disableDeferredNodeExpansion);
             factory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
+            factory.setFeature(DISALLOW_DOCTYPE_DECL_FEATURE, true);
 
             DocumentBuilder builder = factory.newDocumentBuilder();
             setEntityResolver(builder);
@@ -95,7 +95,7 @@
          }
          catch (ParserConfigurationException e)
          {
-            throw new RuntimeException("Failed to create DocumentBuilder", e);
+            log.error(e);
          }
       }
 




More information about the jbossws-commits mailing list