我有一段XSD读取如下
<xs:schema ...>
<xs:element name="order" type="tns:order/>
<xs:complexType name="order">
<xs:sequence>
<xs:element .../>
<xs:element name="itemList" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="item" type="tns:item" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="item">
<xs:sequence>
...
</xs:sequence>
</xs:complexType>
</xs:schema>
默认情况下,使用嵌套类Order.ItemList生成Order类。 Order类中itemList字段的签名是:
protected Order.ItemList itemList;
但是我期望itemList的类型是java.util.List,即
protected List<Item> itemList;
如何通过外部绑定文件实现此目的?我知道这个link但是接受的答案对我不起作用我无法控制这个模式(它是WSDL的一部分)
答案 0 :(得分:1)
您必须使用 @XmlElementWrapper 注释列表itemList 。 你可以用两种方式做到这一点:
该插件与命令行中的xjc或Ant任务或maven-jaxb2-plugin一起使用。
相关答案: