Bom dia pessoal, estou com o seguinte problema:
Eu preciso gerar um xml, acontece que eu tenho essa lista de Modelo dentro da Marca, estou usando o hibernate para buscar todo o conteúdo, a busca funciona muito bem. O problema é o xml que está sendo gerado, veja abaixo como foi gerado, e o que eu passei para gerar!
//minha classe marca
public class MarcaBean(){
private int id_marca;
private String nome;
private Set<ModeloBean> modelo;
//getters and setters
}
//minha classe modelo
public class ModeloBean(){
private int id_nodelo;
private String nome;
private int marca;
//getters and setters
}
//método para gerar o xml
public String geraXMLRegistro (Object obj) {
XStream xstream = new XStream();
xstream.alias("mar", MarcaBean.class);
xstream.alias("mod", ModeloBean.class);
xstream.useAttributeFor(MarcaBean.class, "id_marca");
xstream.useAttributeFor(MarcaBean.class, "nome");
xstream.useAttributeFor(MarcaBean.class, "modelo");
xstream.useAttributeFor(ModeloBean.class, "id_modelo");
xstream.useAttributeFor(ModeloBean.class, "nome");
xstream.useAttributeFor(ModeloBean.class, "marca");
return xstream.toXML(obj);
}
<!-- Meu xml gerado -->
<?xml version="1.0" encoding="iso-8859-15"?><oficina>
<resultado>
<mar id__marca="4" nome="Ferrari">
<modelo class="org.hibernate.collection.PersistentSet">
<set>
<mod id__modelo="5" nome="F40" marca="4"/>
<mod id__modelo="1" nome="F50" marca="4"/>
</set>
<initialized>true</initialized>
<owner class="mar" reference="../.."/>
<cachedSize>-1</cachedSize>
<role>br.com.oficina.bean.MarcaBean.modelo</role>
<key class="int">4</key>
<dirty>false</dirty>
<storedSnapshot class="map">
<entry>
<mod reference="../../../set/mod"/>
<mod reference="../../../set/mod"/>
</entry>
<entry>
<mod reference="../../../set/mod[2]"/>
<mod reference="../../../set/mod[2]"/>
</entry>
</storedSnapshot>
</modelo>
</mar>
</resultado>
</oficina>
Eu quero que apareça da seguinte forma: Se alguém puder me ajudar agradeço!!
<?xml version="1.0" encoding="iso-8859-15"?>
<oficina>
<resultado>
<mar id__marca="4" nome="Ferrari">
<mod id__modelo="5" nome="F40" marca="4"/>
<mod id__modelo="1" nome="F50" marca="4"/>
</mar>
</resultado>
</oficina>