为什么jaxb不能生成指定的类型?它生成了通用List< JAXBElement<?>>而不是生成指定的类型。
案例是我使用xjc将我的xsd转换为java Obj,
我的xsd,
<xs:complexType name="InputType">
<xs:choice maxOccurs="unbounded">
<xs:element name="add" type="AddInputType"/>
<xs:element name="get" type="GetInputType"/>
<xs:element name="del" type="DeleteInputType"/>
</xs:choice>
</xs:complexType>
生成java类,
public class InputType {
@XmlElementRefs({
@XmlElementRef(name = "add", type = JAXBElement.class),
@XmlElementRef(name = "get", type = JAXBElement.class),
@XmlElementRef(name = "del", type = JAXBElement.class)
})
protected List<JAXBElement<?>> addOrGetOrDel;
public List<JAXBElement<?>> getAddOrGetOrDel() {
if (addOrGetOrDel == null) {
addOrGetOrDel = new ArrayList<JAXBElement<?>>();
}
return this.addOrGetOrDel;
}
}