Ler XML com XSTREAM

1 resposta
B

Boa tarde galera,
Estou tentando ler um arquivo de retorno do sefaz (DF-e), porém, empaquei em uma parte e não consegui sair dali.

O xml retornado, vem da seguinte forma:

-<loteDistDFeInt>

<docZip schema="resNFe_v1.00.xsd" NSU="000000000000086">H4sysePp6+LFsSiT8yvj+8KXxz9PwEAAP//Hc4OpCACAAA=</docZip>

<docZip schema="resNFe_v1.00.xsd" NSU="000000000000087">ceUAP5+PH0ddGCRoSb+fXxXWGHo/8nAAD//7rhDnwXAgAA</docZip>

<docZip schema="resNFe_v1.00.xsd" NSU="000000000000088">nr4uWpCGUDO/Pr4rXHD0/wQAAP//BooZaQ4CAAA=</docZip>

</loteDistDFeInt>

Eu consegui ler o schema e o NSU, porém, não consegui ler a informação criptografada.
Classe loteDistDFeInt:

@XStreamAlias(value = "loteDistDFeInt")
public class LoteDistInteresse {
    
    @XStreamImplicit
    private List<DocZIP> docZIP;
}

Classe docZIP:

@XStreamAlias(value = "docZip")
public class DocZIP {
    
    @XStreamAsAttribute
    @XStreamAlias(value = "NSU")
    private String nsu;
    @XStreamAsAttribute
    private String schema;
}

Já tentei utilizar a anotação “XStreamConverter” com o ToAttributeConverter, mas sem sucesso pois não aceitou colocar o atributo “strings”.

Alguém poderia me ajudar? Desde já, agradeço.

1 Resposta

F

bomba544 passei pelo mesmo problema recentemente e consegui resolver implementando o “XStreamConverter” com o “ToAttributeConverter” que você disse ter tentado implementar também…
Verifique se a versão da biblioteca do XStream que você está usando é mais a recente… Implementei com a versão 1.4.2 e deu certo.

O objeto acabou ficando assim:

@XStreamAlias("docZip")
@XStreamConverter(value=ToAttributedValueConverter.class, strings={"value"})
public class DocZip {

    @XStreamAsAttribute
    @XStreamAlias("NSU")
     private String nsu;

    @XStreamAsAttribute
     private String schema;
         
     @XStreamAlias("value")
     private String value;

     <!--GETTERS AND SETTERS--!>

 }
Criado 6 de fevereiro de 2015
Ultima resposta 31 de ago. de 2016
Respostas 1
Participantes 2