Login Registre-se
Erro na assinatura - Cannot resolve element with ID NFe [ Resolvido ]  XML
Índice dos Fóruns » NF-e / NFS-e / CT-e / CF-e / Certificados Digitais
Autor Mensagem
Colodo

Moderador
[Avatar]

Membro desde: 14/03/2011 23:27:47
Mensagens: 168
Localização: Louveira
Offline

Bom dia Galera... Estava afastado desse projeto da empresa, só que com esse erro me chamaram novamente.. rsrs
Quando tentamos assinar o xml, esta retornando o seguinte erro javax.xml.crypto.dsig.XMLSignatureException: javax.xml.crypto.URIReferenceException: com.sun.org.apache.xml.internal.security.utils.resolver.ResourceResolverException: Cannot resolve element with ID NFe35110967908475000151550010000040581000034083
Vi muita coisa sobre isso aqui no fórum mas nenhuma me ajudou, hj nossa classe que assina os XML é um pouco diferente da que esta aqui, segue a baixo



Se alguém tiver alguma luz aii ... rsrsrs

Esta mensagem foi editada 2 vezes. Última atualização foi em 05/02/2014 17:43:00

[MSN]
vinnykrs

JavaC Membro

Membro desde: 03/10/2012 11:03:03
Mensagens: 78
Localização: Assis, São Paulo
Offline

Cara, é uma tentativa mas não custa tentar. Pois uma vez eu estava com um erro mas não lembro se era esse aí.

Na linha 137 onde está:


tenta trocar o doc.getDocumentElement() por doc.getElementsByTagName("NFe").item(index);
no caso você troca o "NFe" pela tag correspondente ("evento", "inutNFe") e o index por 0 caso você for assinar apenas 1 envio.
[MSN]
AlanRS

JavaC Membro

Membro desde: 21/09/2012 09:11:46
Mensagens: 15
Offline

Olá pessoal, estou com o mesmo erro em meu projeto, segue a classe que estou usando para assinar notas:



e o erro que aparece quando tento assinar:

este erro se dá nesta linha:


por favor se alguém puder me ajudar agradeço muito!

Jan 29, 2014 9:12:44 AM cpadivisual.persistencia.entidade.NFe.FuncaoAssinarNFe assinarA1
Grave: null
javax.xml.crypto.dsig.XMLSignatureException: javax.xml.crypto.URIReferenceException: com.sun.org.apache.xml.internal.security.utils.resolver.ResourceResolverException: Cannot resolve element with ID NFe41140117063247000150550010000000171000002237
at org.jcp.xml.dsig.internal.dom.DOMReference.dereference(DOMReference.java:412)
at org.jcp.xml.dsig.internal.dom.DOMReference.digest(DOMReference.java:33
at org.jcp.xml.dsig.internal.dom.DOMXMLSignature.digestReference(DOMXMLSignature.java:471)
at org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sign(DOMXMLSignature.java:367)
at cpadivisual.persistencia.entidade.NFe.FuncaoAssinador.assinarA1(FuncaoAssinador.java:123)
at cpadivisual.persistencia.entidade.NFe.FuncaoAssinarNFe.assinarA1(FuncaoAssinarNFe.java:27)
at cpadivisual.persistencia.entidade.NFe.GerenciadorNotaFiscal$AssinaNFeVenda.doInBackground(GerenciadorNotaFiscal.java:2546)
at cpadivisual.persistencia.entidade.NFe.GerenciadorNotaFiscal$AssinaNFeVenda.doInBackground(GerenciadorNotaFiscal.java:2536)
at javax.swing.SwingWorker$1.call(SwingWorker.java:296)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at javax.swing.SwingWorker.run(SwingWorker.java:335)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: javax.xml.crypto.URIReferenceException: com.sun.org.apache.xml.internal.security.utils.resolver.ResourceResolverException: Cannot resolve element with ID NFe41140117063247000150550010000000171000002237
at org.jcp.xml.dsig.internal.dom.DOMURIDereferencer.dereference(DOMURIDereferencer.java:124)
at org.jcp.xml.dsig.internal.dom.DOMReference.dereference(DOMReference.java:404)
... 13 more
Caused by: com.sun.org.apache.xml.internal.security.utils.resolver.ResourceResolverException: Cannot resolve element with ID NFe41140117063247000150550010000000171000002237
at com.sun.org.apache.xml.internal.security.utils.resolver.implementations.ResolverFragment.engineResolve(ResolverFragment.java:90)
at com.sun.org.apache.xml.internal.security.utils.resolver.ResourceResolver.resolve(ResourceResolver.java:283)
at org.jcp.xml.dsig.internal.dom.DOMURIDereferencer.dereference(DOMURIDereferencer.java:117)
... 14 more
javax.xml.crypto.URIReferenceException: com.sun.org.apache.xml.internal.security.utils.resolver.ResourceResolverException: Cannot resolve element with ID NFe41140117063247000150550010000000171000002237
at org.jcp.xml.dsig.internal.dom.DOMURIDereferencer.dereference(DOMURIDereferencer.java:124)
at org.jcp.xml.dsig.internal.dom.DOMReference.dereference(DOMReference.java:404)
at org.jcp.xml.dsig.internal.dom.DOMReference.digest(DOMReference.java:33
at org.jcp.xml.dsig.internal.dom.DOMXMLSignature.digestReference(DOMXMLSignature.java:471)
at org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sign(DOMXMLSignature.java:367)
at cpadivisual.persistencia.entidade.NFe.FuncaoAssinador.assinarA1(FuncaoAssinador.java:123)
at cpadivisual.persistencia.entidade.NFe.FuncaoAssinarNFe.assinarA1(FuncaoAssinarNFe.java:27)
at cpadivisual.persistencia.entidade.NFe.GerenciadorNotaFiscal$AssinaNFeVenda.doInBackground(GerenciadorNotaFiscal.java:2546)
at cpadivisual.persistencia.entidade.NFe.GerenciadorNotaFiscal$AssinaNFeVenda.doInBackground(GerenciadorNotaFiscal.java:2536)
at javax.swing.SwingWorker$1.call(SwingWorker.java:296)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at javax.swing.SwingWorker.run(SwingWorker.java:335)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: com.sun.org.apache.xml.internal.security.utils.resolver.ResourceResolverException: Cannot resolve element with ID NFe41140117063247000150550010000000171000002237
at com.sun.org.apache.xml.internal.security.utils.resolver.implementations.ResolverFragment.engineResolve(ResolverFragment.java:90)
at com.sun.org.apache.xml.internal.security.utils.resolver.ResourceResolver.resolve(ResourceResolver.java:283)
at org.jcp.xml.dsig.internal.dom.DOMURIDereferencer.dereference(DOMURIDereferencer.java:117)
... 14 more
Colodo

Moderador
[Avatar]

Membro desde: 14/03/2011 23:27:47
Mensagens: 168
Localização: Louveira
Offline

Valeu a Tentativa Vinny mas não deu certo !!

Achei algo falando assim :

Cara, é o mesmo problema que eu tinha. Vc passa o ID para "docs" e depois assina "doc". É outra instância. Por isso não funciona. Igualzinho eu tinha feito no início....


Isso esta nesse link http://www.guj.com.br/java/301513-erro-apos-atualizacao-java-problema-deles-ou-meu-resolvido/3

Mas não consegui entender oque ele esta dizendo..

Esta mensagem foi editada 1 vez. Última atualização foi em 29/01/2014 09:54:40

[MSN]
AlanRS

JavaC Membro

Membro desde: 21/09/2012 09:11:46
Mensagens: 15
Offline

Pessoal, seguinte neste trecho do código eu utilizo um doc:



e dai estava instanciando outro doc aqui:


então esta linha estava indo para o documento errado .. ou seja .. para a nova instância:


agora comentei essa parte de baixo do código e estou usando o mesmo doc que criei acima e assim consigo assinar, porém a receita está retornando a seguinte mensagem:

"Não é permitida a presença de caracteres de edição no início/fim da mensagem ou entre as tags da mensagem"

o que posso fazer para resolver este problema? alguém já passou por isso?

Grato novamente
Colodo

Moderador
[Avatar]

Membro desde: 14/03/2011 23:27:47
Mensagens: 168
Localização: Louveira
Offline

Alan vc pode mostrar que parte vc comentou ?
[MSN]
AlanRS

JavaC Membro

Membro desde: 21/09/2012 09:11:46
Mensagens: 15
Offline

Opa, posso sim ... ficou deste jeito:



comentei aquela parte onde gero um novo doc... e dai utilizo a variável docs que criei acima
AlanRS

JavaC Membro

Membro desde: 21/09/2012 09:11:46
Mensagens: 15
Offline

com isso consigo assinar a nota, mas quando envio a receita responde a seguinte mensagem:
"Não é permitida a presença de caracteres de edição no início/fim da mensagem ou entre as tags da mensagem"

ainda não sei porque, tem alguma ideia do que possa ser?

agradeço
Colodo

Moderador
[Avatar]

Membro desde: 14/03/2011 23:27:47
Mensagens: 168
Localização: Louveira
Offline

Alan pelo que pude ver aqui o seu metodo esta assinando, mas a assinatura esta ficando dentro da Tag inNFe, o correto é assinatura ficar fora dessa tag não é ??
[MSN]
AlanRS

JavaC Membro

Membro desde: 21/09/2012 09:11:46
Mensagens: 15
Offline

Colodo vc tem razão... a assinatura estava no lugar errado ...

alterei esta linha


para:



e o erro da receita mudou ... agora está retornando o seguinte erro:

cstat = 298
"Assinatura difere do padrão do Projeto"

pode me ajudar com isso?

grato
AlanRS

JavaC Membro

Membro desde: 21/09/2012 09:11:46
Mensagens: 15
Offline

Opa, colodo era isso mesmo,

refiz a nota pelo sistema aqui e funcionou corretamente agora

Muito obrigado pela ajuda!!
Colodo

Moderador
[Avatar]

Membro desde: 14/03/2011 23:27:47
Mensagens: 168
Localização: Louveira
Offline

Nossa cara o meu esta retornando o seguinte erro: Rejeição: Assinatura difere do calculado....
[MSN]
AlanRS

JavaC Membro

Membro desde: 21/09/2012 09:11:46
Mensagens: 15
Offline

Caramba!! ... esse retorno eu não conheço ...

mas olha .. o código que fiz aqui e deu certo é este:


depois a receita estava dando aquele erro estranho ... ai na verdade eu somente reconstrui o projeto e gerei a nota novamente e deu certo..

veja se te ajuda em alguma coisa esse código.
Colodo

Moderador
[Avatar]

Membro desde: 14/03/2011 23:27:47
Mensagens: 168
Localização: Louveira
Offline

Cara percebi que esta linha da minha classe



Está diferente da sua ..



Sabe me dizer oque muda aqui ?
[MSN]
AlanRS

JavaC Membro

Membro desde: 21/09/2012 09:11:46
Mensagens: 15
Offline

Opa,

cara ... não entendo muito mas pelo que me parece é que vc usa configurações do System como provider para criar o seu objeto fac.. com esta linha do seu código:

e eu utilizo um objeto direto do DOM para criar isso ... veja o import dessa classe:

no fim acredito que dê no mesmo ... são somente variações de fazer o código...
 
Índice dos Fóruns » NF-e / NFS-e / CT-e / CF-e / Certificados Digitais
Ir para:   
Powered by JForum 2.1.9 © JForum Team