遗留应用程序XML模式定义之一在不同情况下具有使用相同名称定义的两种类型。
<xsd:complexType name="effectType">
<xsd:complexType name="EFFECTType">
模式验证工作正常。但是,当我使用JAXB生成Java对象时,它抱怨无法用同一类生成两个类。
由于现有客户使用了该架构,因此无法更改。是否有任何变通办法,以便允许我使用JAXB为模式生成Java对象?
您可以使用下面的绑定更改生成的类的名称。
<bindings version="2.0" xmlns="http://java.sun.com/xml/ns/jaxb" xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc" xmlns:annox="http://annox.dev.java.net"
xmlns:namespace="http://jaxb2-commons.dev.java.net/namespace-prefix">
<bindings schemaLocation="../path of your xsd/schema.xsd">
<bindings node="//xsd:schema//xsd:complexType[@name='EFFECTType']">
<class name="EffectTypeTwo" />
</bindings>
</bindings>
</bindings>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句