我试图通过使用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>
RESPONSE
<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
请回复