ho il seguente codice XMLXStream analizzare gli attributi ei valori allo stesso tempo
<search ver="3.0">
<loc id="ARBA0009" type="1">Buenos Aires, Argentina</loc>
<loc id="BRXX1283" type="1">Buenos Aires, Brazil</loc>
<loc id="ARDF0127" type="1">Aeroparque Buenos Aires, Argentina</loc>
<loc id="MXJO0669" type="1">Concepcion De Buenos Aires, Mexico</loc>
<loc id="MXPA1785" type="1">San Nicolas De Buenos Aires, Mexico</loc>
<loc id="ARBA0005" type="1">Balcarce, Argentina</loc>
<loc id="ARBA0008" type="1">Bragado, Argentina</loc>
<loc id="ARBA0010" type="1">Campana, Argentina</loc>
<loc id="ARBA0016" type="1">Chascomus, Argentina</loc>
<loc id="ARBA0019" type="1">Chivilcoy, Argentina</loc>
</search>
E una città di livello
public class City {
private String id;
private Integer type;
private String name;
// getters & setters...
}
ho provato i seguenti alias per analizzare il codice XML
xStream.alias("search", List.class);
xStream.alias("loc", City.class);
xStream.useAttributeFor("id", String.class);
xStream.useAttributeFor("type", Integer.class);
Ma non riesco a capire come impostare il valore del tag "loc", se provo a trasformare l'oggetto City in XML ottengo
<search>
<loc id="ARBA0001" type="1">
<name>Buenos Aires</name>
</loc>
</search>
Quando ho davvero bisogno di ottenere questo
<search>
<loc id="ARBA0001" type="1">Buenos Aires</loc>
</search>
Poi, se cerco di analizzare il codice XML in un oggetto di Città ottengo il campo "Nome" con un valore nullo.
Qualcuno sa come impostare gli alias corretti per farlo? Grazie in anticipo.
Controlla il mio post sul blog confrontando JAXB e XStream: http://bdoughan.blogspot.com/2010/10/how-does-jaxb-compare-to-xstream.html –