XJC ale někdy vygeneruje jako atributy třídy typu JAXBElement, do kterých je zabalen výsledný typ:
protected JAXBElement<String> pokus;místo prostého
protected String pokus;Odpověď je nutné hledat v XML schématu, které obsahuje definici
<xs:element name="pokus" minoccurs="0" nillable="true" type="xs:string" />Pak totiž v příslušném XML mohou nastat tři situace:
- element pokus se v dokumentu (normálně) vyskytuje
- element pokus se v dokumentu nevyskytuje (minOccurs="0")
- element pokus se v dokumentu vyskytuje, ale má nastaveno xsi:nil="true" (nillable="true")
Řešení je snadné: reprezentovat prázdnou hodnotu jen jedním způsobem, ale dá se použít jen v případě, že schéma můžete upravovat...
Žádné komentáře:
Okomentovat