xsd に次のようなものがあります (編集できません)。
<xsd:simpleType name="Foo">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="BAR"/>
</xsd:restriction>
</xsd:simpleType>
JAXB はFoo
、子として次の要素を持つクラスを表すこの Java コードを生成します。
public Foo getValue() {
return value;
}
public void setValue(Foo value) {
this.value = value;
}
しかし、 の可能な値は 1 つしかないFoo
ため、Java コードで次のようなものを見たいと思います。
public Foo getValue() {
if( value == null )
{
return Foo.BAR; //Foo already is defined as enum, so this code is fine
}
return value;
}
JAXBでこれを実現する簡単な方法はありますか?