JAXB parser fails on multiple xsd files in same namespace
843834Sep 14 2004 — edited Sep 16 2004I am having a problem with JAXB parsing a schema that imports 2 schema files from a similar namespace. Lets say we have 3 schema files A.xsd, B.xsd, and C.xsd as follows:
A: <xsd:schema xmlns:xsd="<http://www.w3.org/2001/XMLSchema> targetNamespace="A" xmlns="A" xmlns:z="Z" xmlns:jxb="<http://java.sun.com/xml/ns/jaxb> jxb:version="1.0" elementFormDefault="qualified"> <xsd:import namespace="Z" schemaLocation="B.xsd"/> <xsd:import namespace="Z" schemaLocation="C.xsd"/> </xsd:schema>
B: <xsd:schema xmlns:xsd="<http://www.w3.org/2001/XMLSchema> targetNamespace="Z" xmlns="Z" elementFormDefault="qualified"><xs:element name="BElement"></xs:element></xsd:schema>
C: <xsd:schema xmlns:xsd="<http://www.w3.org/2001/XMLSchema> targetNamespace="Z" xmlns="Z" elementFormDefault="qualified"> <xs:element name="CElement"></xs:element></xsd:schema>
The problem we have is that JAXB compiler fails during parsing and complains about an unresolved element (z:CElement) in the second schema (C.xsd) for the single namespace (Z). The complaint is reversed if we flip the order of the imported schema. The exact error is as follows: [ERROR] src-resolve: Cannot resolve the name 'z:CElement' to a(n) element declaration component.
So the question is, how do we get JAXB to permit the import of 2 or more elements that are defined in individual schema files that belong to the same namespace.
Thanks for your support,