Listelemek zorunda olduğum listelerden oluşan bir haritam var. XML bağdaştırıcısı oluşturdum ama JAXB içeriği oluştururken java.util.List is an interface, and JAXB can't handle interfaces.
almaya devam ediyorum. Harita Listesi'ni nasıl sıralamalıyım?JAXB marshaling Listeler haritası
@XmlRootElement(name = "myClass")
public class MyClass {
@XmlJavaTypeAdapter(MapOfListsAdapter.class)
protected Map<Integer, List<Condition>> expectedResults;
ben Kart adaptörü MapOfListsAdapater yazdım:
public class MapOfListsAdapter extends XmlAdapter<List<MapOfListsEntry>, Map<Integer, List<Condition>>> {
@Override
public List<MapOfListsEntry> marshal(Map<Integer, List<Condition>> v) {...}
@Override
public Map<Integer, List<Condition>> unmarshal(List<MapOfListsEntry> v) {...}
}
MapOfListEntry bu JAXB açıklaması bulunmaktadır:
public class MapOfListsEntry {
@XmlAttribute
private Integer key;
@XmlElementRef
@XmlElementWrapper
private List<Condition> value;
konusuna bakın http://stackoverflow.com/questions/818327/jaxb-how-should-i-marshal-complex-nested -veri-yapılar. İstediğiniz çözüm var. – user219882
Bunu gördüm, teşekkürler. Adaptörleri kullanmak istersem ne olur? Neden java.util.List bir arabirim var ve JAXB arabirimleri işleyemiyor? – padis