JAXB @XmlElements使minOccurs = 1

所以我希望有一个列表用@XmlElements注释,如下所示

@XmlElements( { @XmlElement(name = "Apple", type = Apple.class), @XmlElement(name = "Orange", type = Orange.class), @XmlElement(name = "Mango", type = Mango.class) } ) public List getEntries() { return fruitList; } 

我想知道是否有办法强制列表包含至少1个元素,因为现在,xsd看起来像

          

假设Apple,Orange和Mango是Fruit的子类,您可能希望使用@XmlElementRef注释entries属性,该属性对应于XML模式中的替换组,而不是对应于选择概念的@XmlElements

 @XmlElementRef public List getEntries() { return fruitList; } 

这假设Apple,Orange和Mango类扩展了Fruit类,并使用@XmlRootElement进行了注释。

 @XmlRootElement public class Apple extends Fruit { ... } 

了解更多信息

我建议检查一下:

 @XmlElements( { @XmlElement(name = "Apple", type = Apple.class, required = true), @XmlElement(name = "Orange", type = Orange.class, required = true), @XmlElement(name = "Mango", type = Mango.class, required = true) } )