我正在尝试使用 jax-b 插件将我的 xsd 文件转换为 java 对象(该插件读取我的 xsd 文件并将它们转换为模型)。因为我有两个带有请求和响应模式的 xsd。
在这两种模式中,我都有相同的根元素名称,即 XML。有人建议我不要创建绑定文件来克服同名冲突,而是在两个 xsd 上使用不同的名称。
我应用了更改。但是,当我的 jax-b 进行编组和解组时,它会转换为我提供的新名称。
例子:
要求
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:element name="RequestXML">
</xs:schema>
回复
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:element name="ResponseXML">
</xs:schema>
通过 Jax-b 插件它创建了我:
@XmlRootElement(name = "RequestXML")
public class RequestXML
@XmlRootElement(name = "ResponseXML")
public class ResponseXML
编组
<RequestXML>
<HEADER></HEADER>
<CUSTOMER></CUSTOMER>
</RequestXML>
但是我的要求应该是
<XML>
<HEADER></HEADER>
<CUSTOMER></CUSTOMER>
</XML>
请建议我解决方案。创建对象时可以使用绑定吗?我不想手动将 rootElement 名称更改为 XML
请回复