Bom dia.
Estou usando a biblioteca XStream 1.4.4 para recuperar Xml e transformar em Objetos.
Estou com a seguinte situação que não consigo resolver:
Tenho uma tag (docZip) que o valor dela é uma String Base64, porém, essa tag tem atributos.
A estrutura é a seguinte:
<retDistDFeInt>
.......
<loteDistDFeInt>
<docZip schema="......." NSU=".....">valor em string base 64 ...............</docZip>
</loteDistDFeInt>
</retDistDFeInt>
Estou tentando configurar da seguinte forma:
XStream xstream = new XStream();
xstream.alias("retDistDFeInt", RetornoDistribuicaoDFeInteresse.class);
xstream.alias("loteDistDFeInt", LoteDistribuicaoDFeInteresse.class);
xstream.useAttributeFor(RetornoDistribuicaoDFeInteresse.class, "xmlns");
xstream.useAttributeFor(RetornoDistribuicaoDFeInteresse.class, "versao");
xstream.addImplicitCollection( LoteDistribuicaoDFeInteresse.class, "listDocZip");
xstream.alias("docZip", DocZip.class);
xstream.useAttributeFor(DocZip.class, "schema");
xstream.useAttributeFor(DocZip.class, "NSU");
return (RetornoDistribuicaoDFeInteresse) xstream.fromXML( _xml );
Eu criei uma classe DocZip para poder pegar os atributos, mas não sei como fazer para pegar o valor da String Base64.
Alguém tem uma idéia de como fazer?!
Segue as classes:
public class DocZip implements Serializable{
private String NSU;
private String schema;
....
public class LoteDistribuicaoDFeInteresse implements Serializable {
private List<DocZip> listDocZip;
....
public class RetornoDistribuicaoDFeInteresse implements Serializable {
private String versao;
private String xmlns;
...
...
private LoteDistribuicaoDFeInteresse loteDistDFeInt;
Obrigado!