Index: WebappClassLoader.java
===================================================================
RCS file: /home/cvspublic/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/loader/WebappClassLoader.java,v
retrieving revision 1.45
diff -r1.45 WebappClassLoader.java
107a108
> import org.apache.catalina.util.URLEncoder;
200a202,234
>     /**
>      * Encoder for urls, missing out safe characters.
>      */
>     protected static URLEncoder urlEncoder;
> 
> 
>     /**
>      * Initialize urlEncoder
>      */
>     // ----------------------------------------------------- Static Initializer
>     static {
>         urlEncoder = new URLEncoder();
>         urlEncoder.addSafeCharacter('-');
>         urlEncoder.addSafeCharacter('$');
>         urlEncoder.addSafeCharacter('_');
>         urlEncoder.addSafeCharacter('.');
>         urlEncoder.addSafeCharacter('+');
>         urlEncoder.addSafeCharacter('!');
>         urlEncoder.addSafeCharacter('*');
>         urlEncoder.addSafeCharacter('\'');
>         urlEncoder.addSafeCharacter('(');
>         urlEncoder.addSafeCharacter(')');
>         urlEncoder.addSafeCharacter(';');
>         urlEncoder.addSafeCharacter('/');
>         urlEncoder.addSafeCharacter('?');
>         urlEncoder.addSafeCharacter(':');
>         urlEncoder.addSafeCharacter('@');
>         urlEncoder.addSafeCharacter('=');
>         urlEncoder.addSafeCharacter('&');
>         urlEncoder.addSafeCharacter('>');
>         urlEncoder.addSafeCharacter('<');
>     }
> 
953a988
>             } catch (ClassNotFoundException cnfe) {
2043c2078
<         return new URL("file:" + realFile.getPath());
---
>         return new URL("file:" + rewriteUrl(realFile.getPath()));
2046a2082,2090
> 
>     /**
>      * URL rewriter.
>      *
>      * @param path Path which has to be rewritten
>      */
>     protected String rewriteUrl(String path) {
>         return urlEncoder.encode( path );
>     }

