remm        2005/09/08 03:45:14

  Modified:    catalina/src/share/org/apache/naming/resources
                        DirContextURLStreamHandler.java
               catalina/src/share/org/apache/catalina/core
                        ApplicationContext.java
               webapps/docs changelog.xml
  Log:
  - 36534: Context relative URLs returned by ServletContext.getResource() for 
the same path are not equal.
  - Jan's patch.
  
  Revision  Changes    Path
  1.4       +36 -1     
jakarta-tomcat-catalina/catalina/src/share/org/apache/naming/resources/DirContextURLStreamHandler.java
  
  Index: DirContextURLStreamHandler.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/naming/resources/DirContextURLStreamHandler.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- DirContextURLStreamHandler.java   27 Feb 2004 14:58:54 -0000      1.3
  +++ DirContextURLStreamHandler.java   8 Sep 2005 10:45:13 -0000       1.4
  @@ -89,6 +89,41 @@
       }
       
       
  +    // ------------------------------------------------------------ URL 
Methods
  +    
  +    
  +    /**
  +     * Override as part of the fix for 36534, to ensure toString is correct.
  +     */
  +    protected String toExternalForm(URL u) {
  +        // pre-compute length of StringBuffer
  +        int len = u.getProtocol().length() + 1;
  +        if (u.getPath() != null) {
  +            len += u.getPath().length();
  +        }
  +        if (u.getQuery() != null) {
  +            len += 1 + u.getQuery().length();
  +        }
  +        if (u.getRef() != null) 
  +            len += 1 + u.getRef().length();
  +        StringBuffer result = new StringBuffer(len);
  +        result.append(u.getProtocol());
  +        result.append(":");
  +        if (u.getPath() != null) {
  +            result.append(u.getPath());
  +        }
  +        if (u.getQuery() != null) {
  +            result.append('?');
  +            result.append(u.getQuery());
  +        }
  +        if (u.getRef() != null) {
  +            result.append("#");
  +            result.append(u.getRef());
  +        }
  +        return result.toString();
  +    }
  +
  +
       // --------------------------------------------------------- Public 
Methods
       
       
  
  
  
  1.30      +2 -2      
jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/ApplicationContext.java
  
  Index: ApplicationContext.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/ApplicationContext.java,v
  retrieving revision 1.29
  retrieving revision 1.30
  diff -u -r1.29 -r1.30
  --- ApplicationContext.java   29 Aug 2005 10:38:38 -0000      1.29
  +++ ApplicationContext.java   8 Sep 2005 10:45:14 -0000       1.30
  @@ -497,7 +497,7 @@
                   try {
                       resources.lookup(path);
                       return new URL
  -                        ("jndi", null, 0, getJNDIUri(hostName, fullPath),
  +                        ("jndi", "", 0, getJNDIUri(hostName, fullPath),
                            new DirContextURLStreamHandler(resources));
                   } catch (Exception e) {
                       // Ignore
  
  
  
  1.369     +4 -1      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.368
  retrieving revision 1.369
  diff -u -r1.368 -r1.369
  --- changelog.xml     6 Sep 2005 12:50:55 -0000       1.368
  +++ changelog.xml     8 Sep 2005 10:45:14 -0000       1.369
  @@ -33,7 +33,7 @@
           Remove uneeded files in conf. (remm)
         </fix>
         <update>
  -        Change distribution file names from jakarta-* to apache-*.
  +        Change distribution file names from jakarta-* to apache-*. (remm)
         </update>
       </changelog>
     </subsection>
  @@ -49,6 +49,9 @@
         <add>
           <bug>36088</bug>: Add RUNNING.txt and RELEASE-NOTES.txt to fulldocs 
distro. (yoavs)
         </add>
  +      <fix>
  +        <bug>36534</bug>: fix equals for URLs returned by 
ServletContext.getResource() (luehe)
  +      </fix>
       </changelog>
     </subsection>
     
  
  
  

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

Reply via email to