org.apache.cxf.resource.URIResolver on Websphere 6.1 doesn't resolve from 
"wsjar:" base URI's
---------------------------------------------------------------------------------------------

                 Key: CXF-2163
                 URL: https://issues.apache.org/jira/browse/CXF-2163
             Project: CXF
          Issue Type: Bug
          Components: Core
    Affects Versions: 2.1.4
         Environment: Websphere 6.1, fixpack 21, with wsdl4j-1.6.2 in the JRE's 
"endorsed" folder
            Reporter: Jan Ypma


Steps to reproduce:
1) Put wsdl4j-1.6.2 in AppServer\java\jre\lib\endorsed, as is described on the 
CXF Wiki.
2) Deploy a standard CXF webservice server setup, using jaxws:endpoint, but 
with the WSDL and referred XSD's deployed INSIDE a jar file. The WSDL is 
referring to the XSD using <xsd:import schemaLocation="mySchema.xsd"/>.
3) When starting the application, exception FileNotFoundException is thrown on 
the referred XSD.

CXF is looking for the XSD in the app server's root directory, instead of in 
the JAR file. This is caused by Websphere reporting the WSDL's URI in the 
format "wsjar:/path/to/archive.jar!/package/with/file.wsdl", instead of the 
normal Java way which would be 
"jar:/path/to/archive.jar!/package/with/file.wsdl" (note the different prefix). 
This confuses CXF's org.apache.cxf.resource.URIResolver class.

The issue can be fixed by including checks on the "wsjar:" prefix around lines 
79, 105, and 282. Those lines already check on "jar:" and "zip:".

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to