[EMAIL PROTECTED] wrote:
> remm        2005/05/12 06:01:05
> 
>   Modified:    jasper2/src/share/org/apache/jasper/servlet
>                         JspCServletContext.java
>                webapps/docs changelog.xml
>   Log:
>   - 34465: jspc without web.xml.
>   - Submitted by Yoichi Hirose.
>   
>   Revision  Changes    Path
>   1.4       +7 -1      
> jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/servlet/JspCServletContext.java
>   
>   Index: JspCServletContext.java
>   ===================================================================
>   RCS file: 
> /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/servlet/JspCServletContext.java,v
>   retrieving revision 1.3
>   retrieving revision 1.4
>   diff -u -r1.3 -r1.4
>   --- JspCServletContext.java 17 Mar 2004 19:23:05 -0000      1.3
>   +++ JspCServletContext.java 12 May 2005 13:01:04 -0000      1.4
>   @@ -235,7 +235,13 @@
>            if (!path.startsWith("/"))
>                throw new MalformedURLException("Path '" + path +
>                                                "' does not start with '/'");
>   -        return (new URL(myResourceBaseURL, path.substring(1)));
>   +        URL url = new URL(myResourceBaseURL, path.substring(1));
>   +        if ("file".equals(url.getProtocol())) {
>   +            if (!(new File(url.getFile())).exists()) {
>   +                return null;
>   +            }
>   +        }
>   +        return url;
>    
>        }

I don't think this is very efficient. Normally, the resource
with the given path will exist. It is just in the case
of web.xml that it may not exist.

Why not check specifically for existence of web.xml, as follows:


Index: JspConfig.java
===================================================================
RCS file:
/home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspConfig.java,v
retrieving revision 1.18
diff -u -r1.18 JspConfig.java
--- JspConfig.java      24 Mar 2005 04:08:01 -0000      1.18
+++ JspConfig.java      13 May 2005 00:09:22 -0000
@@ -16,6 +16,7 @@

 package org.apache.jasper.compiler;

+import java.io.File;
 import java.io.InputStream;
 import java.util.Iterator;
 import java.util.Vector;
@@ -63,10 +64,12 @@

         try {
             URL uri = ctxt.getResource(WEB_XML);
-            if (uri == null) {
+            if (uri == null
+                || ("file".equals(uri.getProtocol())
+                    && !(new File(uri.getFile())).exists())) {
                // no web.xml
                 return;
-           }
+            }

             is = uri.openStream();
             InputSource ip = new InputSource(is);


Jan




Jan


>   
>   
>   
>   1.308     +7 -0      jakarta-tomcat-catalina/webapps/docs/changelog.xml
>   
>   Index: changelog.xml
>   ===================================================================
>   RCS file: /home/cvs/jakarta-tomcat-catalina/webapps/docs/changelog.xml,v
>   retrieving revision 1.307
>   retrieving revision 1.308
>   diff -u -r1.307 -r1.308
>   --- changelog.xml   11 May 2005 21:39:41 -0000      1.307
>   +++ changelog.xml   12 May 2005 13:01:04 -0000      1.308
>   @@ -153,6 +153,10 @@
>            default encoding. A side effect of this fix is that the bodies of 
> POST requests that
>            require FORM authentication are now buffered and made available 
> after a sucessful login. (markt)
>          </fix>
>   +      <fix>
>   +        <bug>34840</bug>: Better handling of external WARs redeployment, 
> and ignore docBase specified
>   +        in context file if within the Host appBase (remm)
>   +      </fix>
>        </changelog>
>      </subsection>
>      
>   @@ -199,6 +203,9 @@
>            <bug>34652</bug>: Add the ability to get SMAPs when precompiling, 
> submitted by
>            Daryl Robbins (remm)
>          </update>
>   +      <fix>
>   +        <bug>34465</bug>: Jspc failure if there is no web.xml, submitted 
> by Yoichi Hirose (remm)
>   +      </fix>
>        </changelog>
>      </subsection>
>      
>   
>   
>   
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to