gpt4 book ai didi

java - XML 模式在两种不同的情况下有两种同名的元素类型

转载 作者:行者123 更新时间:2023-11-29 05:09:12 25 4
gpt4 key购买 nike

遗留应用程序 XML 架构定义之一在不同情况下使用相同名称定义了两种类型。

<xsd:complexType name="effectType">
<xsd:complexType name="EFFECTType">

模式验证工作正常。但是当我使用 JAXB 生成 Java 对象时,它会提示不能用相同的方式生成两个类。

由于现有客户使用此架构,因此我无法更改它。是否有任何变通方法可以让我使用 JAXB 为模式生成 Java 对象?

最佳答案

您可以使用以下绑定(bind)来更改生成类的名称。

<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>

关于java - XML 模式在两种不同的情况下有两种同名的元素类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29270548/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com