You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@xmlbeans.apache.org by Cezar Andrei <ce...@oracle.com> on 2012/02/08 00:08:15 UTC

Re: EntityResolver not getting called...?

David,

This sounds strange, I checked the code, the resolver is used. Just make
sure you don't have XmlOptions.setLoadUseDefaultResolver ().

You can also give a try using ResolverUtil.resolverForCatalog().

Cezar

On Wed, 2012-01-04 at 01:29 -0800, David Svanberg wrote:
> Hi, my problem is that I have legacy XSD Schemas (won't fix) that
> import other schemas using a non-comformant URI as the schemaLocation
> that I want to compile using XmlBeans.compileXsd (using XmlBeans
> 2.5.0). An example import could look like:
> 
> <xs:import namespace="http://www.example.org" schemaLocation="..\..\My
> Documents"/>
> 
> Please notice that the schemaLocation has no "file://" prefix and
> includes both backslashes and spaces.
> 
> I thought I could use an own EntityResolver to fix the paths but I'm
> not able to get it working. I've tested:
> 
> XmlOptions xmlOpts = new XmlOptions();
> xmlOpts.setEntityResolver(new MyEntityResolver());
> SchemaTypeSystem sts = XmlBeans.compileXsd(new XmlObject[]
> {xmlObject}, XmlBeans.getBuiltinTypeSystem(), xmlOpts);
> 
> But the the resolveEntity method of my MyEntityResolver is never
> beeing called although the javadoc states:
> 
> "If this option is set when compiling a schema, then the given
> EntityResolver will be consulted in order to resolve any URIs while
> downloading imported schemas. EntityResolvers are currently only used
> by compileXsd; they are not consulted by other functions, for example,
> parse. This will likely change in the future."
> 
> The problem must of course be that the schemaLocation is not an URI
> and hence there is an exception somewhere before the resolveEntity is
> getting called. But I want it to consult my resolveEntity before doing
> any URI-checks...
> 
> Am I missing something? How could I proceed or work-around the bad
> schemaLocations?
> 
> Regards,
> David
> 



---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@xmlbeans.apache.org
For additional commands, e-mail: user-help@xmlbeans.apache.org