You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by lu...@apache.org on 2005/02/14 20:54:53 UTC
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler TldLocationsCache.java
luehe 2005/02/14 11:54:53
Modified: jasper2/src/share/org/apache/jasper Constants.java
jasper2/src/share/org/apache/jasper/compiler
TldLocationsCache.java
Log:
Use configuration from alt-dd if specified.
(Setter for alt-dd had been added to StandardContext, but this info was never used.)
Revision Changes Path
1.17 +3 -0 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Constants.java
Index: Constants.java
===================================================================
RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/Constants.java,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- Constants.java 17 Mar 2004 19:23:03 -0000 1.16
+++ Constants.java 14 Feb 2005 19:54:52 -0000 1.17
@@ -121,6 +121,9 @@
public static final String TMP_DIR = "javax.servlet.context.tempdir";
public static final String FORWARD_SEEN = "javax.servlet.forward.seen";
+ // Must be kept in sync with org/apache/catalina/Globals.java
+ public static final String ALT_DD_ATTR = "org.apache.catalina.deploy.alt_dd";
+
/**
* Public Id and the Resource path (of the cached copy)
* of the DTDs for tag library descriptors.
1.28 +28 -4 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TldLocationsCache.java
Index: TldLocationsCache.java
===================================================================
RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TldLocationsCache.java,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- TldLocationsCache.java 16 Jun 2004 18:05:12 -0000 1.27
+++ TldLocationsCache.java 14 Feb 2005 19:54:52 -0000 1.28
@@ -17,6 +17,8 @@
package org.apache.jasper.compiler;
import java.io.InputStream;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
import java.net.JarURLConnection;
import java.net.URL;
import java.net.URLClassLoader;
@@ -34,6 +36,7 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.apache.jasper.Constants;
import org.apache.jasper.JasperException;
import org.apache.jasper.xmlparser.ParserUtils;
import org.apache.jasper.xmlparser.TreeNode;
@@ -260,18 +263,39 @@
try {
// Acquire input stream to web application deployment descriptor
- is = ctxt.getResourceAsStream(WEB_XML);
- if (is == null) {
- if (log.isWarnEnabled()) {
+ String altDDName = (String)ctxt.getAttribute(
+ Constants.ALT_DD_ATTR);
+ if (altDDName != null) {
+ try {
+ is = new FileInputStream(altDDName);
+ } catch (FileNotFoundException e) {
+ if (log.isWarnEnabled()) {
+ log.warn(Localizer.getMessage(
+ "jsp.error.internal.filenotfound",
+ altDDName));
+ }
+ }
+ } else {
+ is = ctxt.getResourceAsStream(WEB_XML);
+ if (is == null && log.isWarnEnabled()) {
log.warn(Localizer.getMessage(
"jsp.error.internal.filenotfound",
WEB_XML));
}
+ }
+
+ if (is == null) {
return;
}
// Parse the web application deployment descriptor
- TreeNode webtld = new ParserUtils().parseXMLDocument(WEB_XML, is);
+ TreeNode webtld = null;
+ // altDDName is the absolute path of the DD
+ if (altDDName != null) {
+ webtld = new ParserUtils().parseXMLDocument(altDDName, is);
+ } else {
+ webtld = new ParserUtils().parseXMLDocument(WEB_XML, is);
+ }
// Allow taglib to be an element of the root or jsp-config (JSP2.0)
TreeNode jspConfig = webtld.findChild("jsp-config");
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org