A hned si aj odpoviem: staci presunut deklaraciu adapteru na uroven packagu.
--- On Tue, 4/21/09, Radovana Straube <[email protected]> wrote: > From: Radovana Straube <[email protected]> > Subject: JAXB, XMLAdapter a primitivny typ > To: [email protected] > Date: Tuesday, April 21, 2009, 12:02 PM > Dobry den, > > mam XML-data s elementami typu: > <odpoved1>j</odpoved1> > <odpoved2>j</odpoved2> > j = ano (Ja) > n = nie (Nein) > a potrebujem pouzit unmarshalling, ktory mi tieto stringy > prevedie na booleany. XmlAdapter som uz parkrat uspesne > pouzila pri konvertovani stringov na stringy, ale konverziu > boolean-string neviem rozchodit (autoboxing by mal snad > fungovat). > > public class BooleanAdapter extends XmlAdapter<String, > Boolean> { > > @Override > public Boolean unmarshal(String _sValue) { > boolean value = BooleanType.YES.equals(_sValue); > return new Boolean(value); > } > > @Override > public String marshal(Boolean _value){ > if (_value) { > return BooleanType.YES.value; > } else { > return BooleanType.NO.value; > } > } > } > > > @XmlRootElement > @XmlAccessorType(XmlAccessType.FIELD) > public class Zeichen { > > @XmlJavaTypeAdapter(BooleanAdapter.class) > @XmlElement(name="faeulnis") > private boolean faeulnis; > > public boolean isFaeulnis() { > return faeulnis; > } > > public void setFaeulnis(boolean faeulnis) { > this.faeulnis = faeulnis; > } > .... > > Pri spusteni dostanem nasledovnu chybu: > com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 > counts of IllegalAnnotationExceptions > Adapter > de.bolsys.stala.mortality.data.model.adapter.BooleanAdapter > is not applicable to the field type boolean. > this problem is related to the following location: > at > @javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter(type=class > javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter$DEFAULT, > value=class > de.bolsys.stala.mortality.data.model.adapter.BooleanAdapter) > at private boolean > de.bolsys.stala.mortality.data.model.Zeichen.faeulnis > > Nasla som na Internete, ze aj primitivne typy by mali > fungovat ale popisane riesenie mi bohuzial nefungovalo. > Vedel by mi prosim nieto poradit ako na to? > > Dakujem > Radovana Straube
