我正在使用JAXB在Maven中使用JAXB插件从XSD生成bean。 这工作正常,期望代码包含每个字段的isSetXXXXXX()方法。JAXB Bean生成
例如
一个字段的firstName,它产生下面的代码:
@XmlElement(name = "FirstName", required = true)
protected String firstName;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.token = firstName;
}
public boolean isSetFirstName() {
return (this.firstName!= null);
}
这isSetFirstName()方法导致的问题,我不想JAXB生成这些。
有没有办法阻止这种行为?
谢谢。
UPDATE
解决了这个:问题是在XJB文件,generateIsSetMethod设置为true。
<xs:annotation>
<xs:appinfo>
<jaxb:globalBindings generateIsSetMethod="true">
bindingStyle="modelGroupBinding"
choiceContentProperty="true" >
<xjc:serializable uid="12343"/>
<jaxb:javaType name="short"
xmlType="xs:long"
printMethod="javax.xml.bind.DatatypeConverter.printShort"
parseMethod="javax.xml.bind.DatatypeConverter.parseShort"/>
</jaxb:globalBindings>
</xs:appinfo>
</xs:annotation>
这也回答了我的previous question。
嘿adi,您更新的XML代码片段是无效的XML,是在'generateIsSetMethod =“true”'之后>是否在那里? –