我正在使用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」'之後>是否在那裏? –