From fe84e64b9abdc80d20188d75188290fc5f5e8526 Mon Sep 17 00:00:00 2001 From: markt Date: Sun, 20 Apr 2008 20:47:57 +0000 Subject: [PATCH] Fix bug 29936. In some circumstances, Tomcat would use the parser from a webapp to parse web.xml and possibly context.xml files. git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@649974 13f79535-47bb-0310-9956-ffa450edef68 --- java/org/apache/catalina/startup/ContextConfig.java | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/java/org/apache/catalina/startup/ContextConfig.java b/java/org/apache/catalina/startup/ContextConfig.java index 7ea2b2987..2cac87b4f 100644 --- a/java/org/apache/catalina/startup/ContextConfig.java +++ b/java/org/apache/catalina/startup/ContextConfig.java @@ -339,10 +339,6 @@ public class ContextConfig long t1=System.currentTimeMillis(); - if (webDigester == null){ - webDigester = createWebDigester(); - } - URL url=null; // Process the application web.xml file synchronized (webDigester) { @@ -624,10 +620,6 @@ public class ContextConfig + " " + defaultWebXml + " " + file , e); } - if (webDigester == null){ - webDigester = createWebDigester(); - } - if (stream != null) { processDefaultWebConfig(webDigester, stream, source); webRuleSet.recycle(); @@ -786,9 +778,6 @@ public class ContextConfig if (source == null) return; - if (contextDigester == null){ - contextDigester = createContextDigester(); - } synchronized (contextDigester) { try { source.setByteStream(stream); @@ -997,6 +986,16 @@ public class ContextConfig protected void init() { // Called from StandardContext.init() + if (webDigester == null){ + webDigester = createWebDigester(); + webDigester.getParser(); + } + + if (contextDigester == null){ + contextDigester = createContextDigester(); + contextDigester.getParser(); + } + if (log.isDebugEnabled()) log.debug(sm.getString("contextConfig.init")); context.setConfigured(false); -- 2.11.0