我有一个架构:
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="get_item">
<xs:complexType>
<xs:sequence>
<xs:element type="xs:anyURI" name="imgpurl1"/>
<xs:element type="xs:anyURI" name="imgurl1"/>
<xs:element type="xs:string" name="imgcap1"/>
<xs:element type="xs:anyURI" name="imgpurl2"/>
<xs:element type="xs:anyURI" name="imgurl2"/>
<xs:element type="xs:string" name="imgcap2"/>
<xs:element type="xs:anyURI" name="imgpurlN"/>
<xs:element type="xs:anyURI" name="imgurlN"/>
<xs:element type="xs:string" name="imgcapN"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
用于此的 xml 如下所示:
<?xml version=“1.0”?>
<get_item>
.......snip.......
<imgpurl1></imgpurl1>
<imgurl1></imgurl1>
<imgcap1></imgcap1>
…
<imgpurlN></imgpurlN>
<imgurlN></imgurlN>
<imgcapN></imgcapXN>
</get_item>
imgurl1...N 可以有任意数量的元素。我不知道 N 可以/将会是什么,所以我希望能够将它作为参数传递并自动正确创建它。
显然,从模式生成的 Eclipse 不提供此功能,那么如何修改创建的类以便它们处理 N 个元素?
有没有办法做一个自定义的 jaxb 适配器来按照我需要的方式编组?