DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUGĀ· RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://issues.apache.org/bugzilla/show_bug.cgi?id=36534>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED ANDĀ· INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=36534 Summary: Context relative URLs returned by ServletContext.getResource() for the same path are not equal Product: Tomcat 5 Version: Nightly Build Platform: Other OS/Version: other Status: NEW Severity: normal Priority: P2 Component: Catalina AssignedTo: tomcat-dev@jakarta.apache.org ReportedBy: [EMAIL PROTECTED] Consider the following servlet snippet: URL main = context.getResource("/WEB-INF/wsdl/hello_literal.wsdl"); URL sub = new URL(main, "hello.xsd"); URL sub1 = context.getResource("/WEB-INF/wsdl/hello.xsd"); While sub.toString().equals(sub1.toString()) is TRUE, sub.equals(sub1) returns FALSE, where it should also return TRUE. I noticed the reason sub.equals.(sub1) is FALSE is because their getHost() values are different: sub.getHost() -> "" sub1.getHost() -> null Notice that in the case of URL sub = new URL(main, "hello.xsd"); java.net.URLStreamHandler.parseURL() will set host to "", while in the case of URL sub1 = context.getResource("/WEB-INF/wsdl/hello.xsd"); which is implemented by org.apache.catalina.core.ApplicationContext.getResource() as follows: return new URL ("jndi", null, 0, getJNDIUri(hostName, fullPath), new DirContextURLStreamHandler(resources)); the host component is set to "null". Changing return new URL ("jndi", null, 0, getJNDIUri(hostName, fullPath), new DirContextURLStreamHandler(resources)); to return new URL ("jndi", "", 0, getJNDIUri(hostName, fullPath), new DirContextURLStreamHandler(resources)); in ApplicationContext.getResource() fixes the problem. Unfortunately, I am having cvs problems, otherwise i would have committed the fix myself. -- Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]