1
JAXBエンティティを作成しています。JAXBなしオプションコレクション
public class Person {
public Collection<String> getNames() {
if (names == null) {
names = new ArrayList<String>();
}
}
@XmlElement(required = true)
private int age;
@XmlElement(name = "name")
@XmlElementWrapper(required = true)
private Collection<String> names;
}
次のような例があります。私は、このインスタンスをマーシャリング
final Person person = new Person();
person.setAge(18);
私は私が期待したものではありません
<person>
<age>18<age>
</person>
を得ました。私はgetNames()
を呼び出した後にのみ、私は
<person>
<age>18</age>
<games/>
<person>
を得ることができ
はこの正常ですか?
私は現在、内部で 'getGames'を呼び出す' beforeMarshal(Marshaller) 'メソッドを提供することでこの問題を解決しています。 –
'@XmlElementWrapper'に' nillable = true'を追加すると、同じ解決法があります。私はこれが良いと思います。 –