Galera estou tentando utilizar o XStream para gerar xml, e não estou conseguindo elimiar a linha que retorna “outer-class reference”, segue o código:
[code]import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;
public class Pessoa {
private String nome;
private String sobrenome;
private Fone telefone;
private Fone celular;
public Pessoa(String nome, String sobrenome) {
this.nome = nome;
this.sobrenome = sobrenome;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getSobrenome() {
return sobrenome;
}
public void setSobrenome(String sobrenome) {
this.sobrenome = sobrenome;
}
public Fone getTelefone() {
return telefone;
}
public void setTelefone(Fone telefone) {
this.telefone = telefone;
}
public Fone getCelular() {
return celular;
}
public void setCelular(Fone celular) {
this.celular = celular;
}
public class Fone{
private int codigo;
private String numero;
public Fone(int codigo, String numero){
this.codigo = codigo;
this.numero = numero;
}
public int getCodigo() {
return codigo;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public String getNumero() {
return numero;
}
public void setNumero(String numero) {
this.numero = numero;
}
}
public static void main(String[] args){
Pessoa pessoa = new Pessoa(“Paulo”, “Pedroso”);
pessoa.setTelefone(pessoa.new Fone(54, “1234-5678”));
pessoa.setCelular(pessoa.new Fone(54, “9999-9999”));
XStream xStream = new XStream(new DomDriver());
xStream.alias("pessoa", Pessoa.class);
xStream.alias("fone", Fone.class);
System.out.println(xStream.toXML(pessoa));
}
}
[/code]
O que me retorna o sguinte:
<pessoa>
<nome>Paulo</nome>
<sobrenome>Pedroso</sobrenome>
<telefone>
<codigo>54</codigo>
<numero>1234-5678</numero>
<outer-class reference="../.."/> //Aqui a linha que preciso elimiar
</telefone>
<celular>
<codigo>54</codigo>
<numero>9999-9999</numero>
<outer-class reference="../.."/> //Aqui a linha que preciso elimiar
</celular>
</pessoa>