Login Registre-se
Erro ao transformar XML em Objeto [RESOLVIDO]  XML
Índice dos Fóruns » NF-e / NFS-e / CT-e / CF-e / Certificados Digitais
Autor Mensagem
jocabaldini

JavaC Membro

Membro desde: 31/10/2012 14:21:25
Mensagens: 178
Offline

Bom dia galera, estou fazendo o e-mail que será enviado ao cliente quando a nota for autorizada. No corpo do e-mail vai algumas informações e entre elas vai a data de emissão da NFe.

Tentei fazer o Unmarshaller com o xml do nfeProc para pegar o campo dEmi e colocar no e-mail, mas deu o seguinte erro:


Esse é o código para fazer o Unmarshaller (o erro acontece na linha 04):


Em anexo o xml que estou usando pra testar.

Alguém sabe como resolver????
 Nome do arquivo nfeProc.xml [Disk] Download
 Descrição
 Tamanho 17 Kbytes
 Baixado:  626 vez(es)

Esta mensagem foi editada 1 vez. Última atualização foi em 12/08/2013 16:42:31

jeroqueiroz

Moderador
[Avatar]

Membro desde: 11/06/2011 09:45:18
Mensagens: 1348
Localização: Bahia
Offline

Quai informações você precisa de fato, porque tranformar todo o XML Proc em objeto sendo que você envia ele anexo.

Pode obter informações transformando o retorno do envio em Objeto como abaixo:


Jeremias Santos
Seguir no Twitter @jeroqueiroz
Blog Jeroqueiroz


Projeto NF-e, CT-e, CC-e? Comece Por Aqui!


Membros do fórum,

Usem a tag [code] e [/code] quando postarem Códigos Java e ou exemplos de XMLs.
Evitem tópicos duplicados.
Tópico solucionado? Edite o primeiro post e coloque [RESOLVIDO] no final do título.
Evitem reviver tópicos antigos.

O tópico resolveu seu problema? Seja gentil, comente e ou agradeça quem contribuiu com a solução.

Obrigado!
[Email] [WWW] [Yahoo!] [MSN]
jocabaldini

JavaC Membro

Membro desde: 31/10/2012 14:21:25
Mensagens: 178
Offline

Preciso da data de emissão.

Até pensei em guardar no BD, mas como já tenho o nfeProc achei melhor transformar em objeto e então pegar a data, assim não guardava informações repetidas no BD.
jeroqueiroz

Moderador
[Avatar]

Membro desde: 11/06/2011 09:45:18
Mensagens: 1348
Localização: Bahia
Offline

Olha vou passar uma dica se achar viável implemente se não pode seguir como esta:

Dica: Se você possui a necessidade de usar alguns campos como chave, data de emissão e outros quaisquer até mesmo para exibir em uma tela de gerenciamento das NF-e emitidas, interessante que tenha este 10 ou 15 campos no BD e que o XML fique como uma String em um outro campo, para que possa ler esta informações do BD, ao menos é o que faço, pois este processo de conversão creio ser mais custoso a app e também existe uma possibilidade maior de gerar erros no processo de conversão.

Jeremias Santos
Seguir no Twitter @jeroqueiroz
Blog Jeroqueiroz


Projeto NF-e, CT-e, CC-e? Comece Por Aqui!


Membros do fórum,

Usem a tag [code] e [/code] quando postarem Códigos Java e ou exemplos de XMLs.
Evitem tópicos duplicados.
Tópico solucionado? Edite o primeiro post e coloque [RESOLVIDO] no final do título.
Evitem reviver tópicos antigos.

O tópico resolveu seu problema? Seja gentil, comente e ou agradeça quem contribuiu com a solução.

Obrigado!
[Email] [WWW] [Yahoo!] [MSN]
jocabaldini

JavaC Membro

Membro desde: 31/10/2012 14:21:25
Mensagens: 178
Offline

Agradeço a ajuda Jeremias.

Pretendo fazer assim mesmo, mas tenho que seguir o que é me passado pela empresa.

Vlw de qq forma.

jeroqueiroz

Moderador
[Avatar]

Membro desde: 11/06/2011 09:45:18
Mensagens: 1348
Localização: Bahia
Offline

Sobre seu erro, você esta trazendo uma String do Banco e enviando para transformar em Objeto? Se sim, já verificou se não esta sendo trazidos campos adicionais? ou Espaço vazios?

Copie o conteúdo ou pegue o XML Proc, leia e então envie a String para transformar em objeto e verifique se funcione.

Esta classe TRetEnviNFe.class é de qual pacote, pois o erro pode estar nela também, não na classe mas usando alguma do pacote errado.

Jeremias Santos
Seguir no Twitter @jeroqueiroz
Blog Jeroqueiroz


Projeto NF-e, CT-e, CC-e? Comece Por Aqui!


Membros do fórum,

Usem a tag [code] e [/code] quando postarem Códigos Java e ou exemplos de XMLs.
Evitem tópicos duplicados.
Tópico solucionado? Edite o primeiro post e coloque [RESOLVIDO] no final do título.
Evitem reviver tópicos antigos.

O tópico resolveu seu problema? Seja gentil, comente e ou agradeça quem contribuiu com a solução.

Obrigado!
[Email] [WWW] [Yahoo!] [MSN]
jocabaldini

JavaC Membro

Membro desde: 31/10/2012 14:21:25
Mensagens: 178
Offline

Eu recebo um array de bytes do banco e com ele tento criar o objeto. Uso o mesmo código pra criar um objeto com o retorno do RetRecepcao, a única diferença é que nesse caso pego direto o xml de retorno e não do BD. Por isso acho que deve ter alguma sujeira no XML qd pego no banco.

A classe, na verdade, é a TNfeProc do pacote procNFe.
jeroqueiroz

Moderador
[Avatar]

Membro desde: 11/06/2011 09:45:18
Mensagens: 1348
Localização: Bahia
Offline

Ao que tudo indica o problema esta nesta montagem do XML que esta obtendo do BD.

Jeremias Santos
Seguir no Twitter @jeroqueiroz
Blog Jeroqueiroz


Projeto NF-e, CT-e, CC-e? Comece Por Aqui!


Membros do fórum,

Usem a tag [code] e [/code] quando postarem Códigos Java e ou exemplos de XMLs.
Evitem tópicos duplicados.
Tópico solucionado? Edite o primeiro post e coloque [RESOLVIDO] no final do título.
Evitem reviver tópicos antigos.

O tópico resolveu seu problema? Seja gentil, comente e ou agradeça quem contribuiu com a solução.

Obrigado!
[Email] [WWW] [Yahoo!] [MSN]
jocabaldini

JavaC Membro

Membro desde: 31/10/2012 14:21:25
Mensagens: 178
Offline

O problema era o XML passado mesmo. O arquivo passado 'nota.getArquivoNFeProc().toString()' não pode ser passa.

O arquivo em bytes tem que, realmente, ser transformado em string.

Para isso eu usei o método lerXML:


Dessa forma o Unmarshaller é feito corretamente.

 
Índice dos Fóruns » NF-e / NFS-e / CT-e / CF-e / Certificados Digitais
Ir para:   
Powered by JForum 2.1.9 © JForum Team