Erro ao converter XML to Objetct

0 respostas
T

Pessoal, estou utilizando Xstream para converter um xml em objeto, porém o mesmo esta me retornando erro de mapeamento, não estou conseguindo solucionar, segue abaixo código utilizado, xml e erro:

<webservicecep>
<quantidade>4</quantidade>
<retorno>
<cep>18043020</cep>
<uf>SP</uf>
<cidade>Sorocaba</cidade>
<bairro>Vila Lucy</bairro>
<tipo_logradouro>Rua</tipo_logradouro>
<logradouro>Aníbal Costa Dias</logradouro>
<resultado>1</resultado>
<resultado_txt>sucesso. logradouro encontrado local</resultado_txt>
<limite_buscas>50</limite_buscas>
<ibge_uf>35</ibge_uf>
<ibge_municipio>355220</ibge_municipio>
<ibge_municipio_verificador>3552205</ibge_municipio_verificador>
</retorno>
<retorno>
<cep>18108200</cep>
<uf>SP</uf>
<cidade>Sorocaba</cidade>
<bairro>Brigadeiro Tobias</bairro>
<tipo_logradouro>Rua</tipo_logradouro>
<logradouro>Aníbal Figueiredo</logradouro>
<resultado>1</resultado>
<resultado_txt>sucesso. logradouro encontrado local</resultado_txt>
<limite_buscas>50</limite_buscas>
<ibge_uf>35</ibge_uf>
<ibge_municipio>355220</ibge_municipio>
<ibge_municipio_verificador>3552205</ibge_municipio_verificador>
</retorno>
</webservicecep>

import java.util.ArrayList;
import java.util.List;


public class webservicecep {
	
	private List<retorno> retorno;
	private Long quantidade;
	
	public webservicecep(){
		retorno = new ArrayList<retorno>();
	}

	public List<retorno> getRetorno() {
		return retorno;
	}

	public void setRetorno(List<retorno> retorno) {
		this.retorno = retorno;
	}

	public Long getQuantidade() {
		return quantidade;
	}

	public void setQuantidade(Long quantidade) {
		this.quantidade = quantidade;
	}
	
	public void add(retorno r){
        retorno.add(r);
    }
}


public class retorno {
	
	private Long cep;
	private String uf;
	private String cidade;
	private String bairro;
	private String tipo_logradouro;
	private String logradouro;
	private String resultado;
	private String resultado_txt;
	private String limite_buscas;
	private String ibge_uf;
	private String ibge_municipio;
	private String ibge_municipio_verificador;
	public Long getCep() {
		return cep;
	}
	public void setCep(Long cep) {
		this.cep = cep;
	}
	public String getUf() {
		return uf;
	}
	public void setUf(String uf) {
		this.uf = uf;
	}
	public String getCidade() {
		return cidade;
	}
	public void setCidade(String cidade) {
		this.cidade = cidade;
	}
	public String getBairro() {
		return bairro;
	}
	public void setBairro(String bairro) {
		this.bairro = bairro;
	}
	public String getTipo_logradouro() {
		return tipo_logradouro;
	}
	public void setTipo_logradouro(String tipo_logradouro) {
		this.tipo_logradouro = tipo_logradouro;
	}
	public String getLogradouro() {
		return logradouro;
	}
	public void setLogradouro(String logradouro) {
		this.logradouro = logradouro;
	}
	public String getResultado() {
		return resultado;
	}
	public void setResultado(String resultado) {
		this.resultado = resultado;
	}
	public String getResultado_txt() {
		return resultado_txt;
	}
	public void setResultado_txt(String resultado_txt) {
		this.resultado_txt = resultado_txt;
	}
	public String getLimite_buscas() {
		return limite_buscas;
	}
	public void setLimite_buscas(String limite_buscas) {
		this.limite_buscas = limite_buscas;
	}
	public String getIbge_uf() {
		return ibge_uf;
	}
	public void setIbge_uf(String ibge_uf) {
		this.ibge_uf = ibge_uf;
	}
	public String getIbge_municipio() {
		return ibge_municipio;
	}
	public void setIbge_municipio(String ibge_municipio) {
		this.ibge_municipio = ibge_municipio;
	}
	public String getIbge_municipio_verificador() {
		return ibge_municipio_verificador;
	}
	public void setIbge_municipio_verificador(String ibge_municipio_verificador) {
		this.ibge_municipio_verificador = ibge_municipio_verificador;
	}
	
}

//Conversão
XStream xml = new XStream(new DomDriver("UTF-8"));  
			xml.alias("webservicecep", webservicecep.class);
			xml.alias("retorno", retorno.class);
			xml.addImplicitCollection(webservicecep.class, "retorno");
			xml.aliasField("cep", retorno.class, "cep");
			xml.aliasField("uf", retorno.class, "uf");
			xml.aliasField("cidade", retorno.class, "cidade");
			xml.aliasField("bairro", retorno.class, "bairro");
			xml.aliasField("tipo_logradouro", retorno.class, "tipo_logradouro");
			xml.aliasField("logradouro", retorno.class, "logradouro");
			xml.aliasField("resultado", retorno.class, "resultado");
			xml.aliasField("resultado_txt", retorno.class, "resultado_txt");
			xml.aliasField("limite_buscas", retorno.class, "limite_buscas");
			xml.aliasField("ibge_uf", retorno.class, "ibge_uf");
			xml.aliasField("ibge_municipio", retorno.class, "ibge_municipio");
			xml.aliasField("ibge_municipio_verificador", retorno.class, "ibge_municipio_verificador");
			
			webservicecep resultado = (webservicecep) xml.fromXML(newData.toString());

ERRO:

<?xml version="1.0" encoding="utf-8" ?>418043020SPSorocabaVila Lucy<tipo_logradouro>Rua</tipo_logradouro>Aníbal Costa Dias1<resultado_txt>sucesso. logradouro encontrado local</resultado_txt><limite_buscas>50</limite_buscas><ibge_uf>35</ibge_uf><ibge_municipio>355220</ibge_municipio><ibge_municipio_verificador>3552205</ibge_municipio_verificador>18108200SPSorocabaBrigadeiro Tobias<tipo_logradouro>Rua</tipo_logradouro>Aníbal Figueiredo1<resultado_txt>sucesso. logradouro encontrado local</resultado_txt><limite_buscas>50</limite_buscas><ibge_uf>35</ibge_uf><ibge_municipio>355220</ibge_municipio><ibge_municipio_verificador>3552205</ibge_municipio_verificador>18103475SPSorocabaJardim Harmonia<tipo_logradouro>Rua</tipo_logradouro>Aníbal Leite da Cruz1<resultado_txt>sucesso. logradouro encontrado local</resultado_txt><limite_buscas>50</limite_buscas><ibge_uf>35</ibge_uf><ibge_municipio>355220</ibge_municipio><ibge_municipio_verificador>3552205</ibge_municipio_verificador>18025270SPSorocabaVila Barcelona<tipo_logradouro>Rua</tipo_logradouro>Aníbal Prestes1<resultado_txt>sucesso. logradouro encontrado local</resultado_txt><limite_buscas>50</limite_buscas><ibge_uf>35</ibge_uf><ibge_municipio>355220</ibge_municipio><ibge_municipio_verificador>3552205</ibge_municipio_verificador>
com.thoughtworks.xstream.converters.ConversionException: cep : cep : cep : cep
---- Debugging information ----
message : cep : cep
cause-exception : com.thoughtworks.xstream.mapper.CannotResolveClassException
cause-message : cep : cep
class : webservicecep
required-type : java.lang.Object
path : /webservicecep/retorno/cep

at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:89)
at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63)
at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76)
at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:225)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:162)
at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82)
at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63)
at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76)
at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60)
at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:137)
at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:33)
at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:923)
at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:909)
at com.thoughtworks.xstream.XStream.fromXML(XStream.java:853)
at com.thoughtworks.xstream.XStream.fromXML(XStream.java:845)
at CepService.searchCEP(CepService.java:100)
at Teste.main(Teste.java:18)
Caused by: com.thoughtworks.xstream.mapper.CannotResolveClassException: cep : cep

at com.thoughtworks.xstream.mapper.DefaultMapper.realClass(DefaultMapper.java:68)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.DynamicProxyMapper.realClass(DynamicProxyMapper.java:71)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.PackageAliasingMapper.realClass(PackageAliasingMapper.java:88)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.ClassAliasingMapper.realClass(ClassAliasingMapper.java:86)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.ArrayMapper.realClass(ArrayMapper.java:96)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)

at com.thoughtworks.xstream.mapper.CachingMapper.realClass(CachingMapper.java:52)

at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.determineType(AbstractReflectionConverter.java:347)

at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:208)

at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:162)

at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82)

 17 more

ERROR: JDWP Unable to get JNI 1.2 environment, jvm->GetEnv() return code = -2

JDWP exit error AGENT_ERROR_NO_JNI_ENV(183):  [///src/share/back/util.c:820]

ALGUEM PODE ME AJUDAR?

Criado 19 de março de 2013
Respostas 0
Participantes 1