我正在使用导入外部模式的模式生成 JAXB 类。此外部架构与源架构位于同一文件夹中。类的生成没有任何错误,生成后有两个包,一个用于导入的模式,另一个用于导入它的模式。但是,在元素引用到导入的模式时,更准确地说是在以下行:
@XmlElementRef(name = "elementName", namespace = "http://importedSchema/url", type = JAXBElement.class)
我收到一个错误:
“XML 注册表中没有与命名空间 'http://importedSchema/url' 和名称 'elementName' 匹配的 XML 元素 decl。 ”
以名称“elementName”引用的元素位于另一个包中。我可以在 ObjectFactory.java 中看到它的类和它,但不幸的是,我收到了这个错误。
有谁知道如何解决这个问题?
提前致谢。
铌
架构根标签:
<xsd:schema targetNamespace="http://mySchema"
elementFormDefault="qualified" attributeFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://mySchema" xmlns:es="http://importedSchema/url">
<xsd:import schemaLocation="ESchema.xsd" namespace="http://importedSchema/url">
元素参考:
<xsd:complexType name="myType">
<xsd:sequence>
<xsd:element ref="es:elementName"></xsd:element>
</xsd:sequence>
</xsd:complexType>