Craig,

Craig Tataryn <crai...@tataryn.net> wrote on 09/10/2009 11:09:05 PM:

<snip/>

> Hmm, I see.  I can kind of understand why they wouldn't be setting
> the SystemID as they might not know how to gleam what it should be
> (in all cases).  When I'm in front of the code tomorrow I'll see if
> I can deduce what it should be within the context of that call.
> Otherwise, is there a way in the WSDL I can set the SystemId?  Or
> perhaps you are saying that even if the SystemId were present in the
> WSDL CXF wouldn't be respecting it?

What I'm saying is that CXF's usage of JAXP here is not correct. A system
ID is required for resolution of relative URIs and schema documents can
contain relative URIs in xs:include / xs:import / xs:redefine. How this
base URI is specified and flows through CXF is totally up to them (though
Document.documentURI [1] is a natural place to store it) but they need to
provide it at the call site where they're loading the schema by calling
setSystemId() on the Source object they pass into SchemaFactory.newSchema
().

> Thanks Michael.
>
> Craig.

Thanks.

[1]
http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core.html#Document3-documentURI

Michael Glavassevich
XML Parser Development
IBM Toronto Lab
E-mail: mrgla...@ca.ibm.com
E-mail: mrgla...@apache.org

Reply via email to