Autor |
Mensagem |
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 14/08/2015 18:48:07
|
rafaelmw
JavaC Membro
Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline
|
Bem galera , estou tentando gerar uma NFSE (Goiania) e estou recebendo o seguinte resposta:
<GerarNfseResposta xmlns="http://nfse.goiania.go.gov.br/xsd/nfse_gyn_v02.xsd">
<ListaMensagemRetorno>
<MensagemRetorno>
<Codigo>E324</Codigo>
<Mensagem>Assinatura do RPS inválida.</Mensagem>
<Correcao>O RPS deve conter assinatura digital vinculada a certificado digital padrão ICP Brasil, não revogado e não expirado.</Correcao>
</MensagemRetorno>
</ListaMensagemRetorno>
</GerarNfseResposta>
Alguem tem alguma luz ? acho que o problema é na hora de gerar o digestValue, já que nao sei muito bem como gera-lo...
Segue em anexo o xml que eu gero com o arquivo.
Nome do arquivo |
Teste2.xml |
Download
|
Descrição |
|
Tamanho |
5 Kbytes
|
Baixado: |
346 vez(es) |
|
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 15/08/2015 11:51:21
|
cado_arena
JavaC Membro
Membro desde: 06/08/2013 15:11:59
Mensagens: 31
Offline
|
Olá Rafael,
Com o XML que você enviou não consigo verificar a assinatura, mas você mesmo pode fazer isto através do seguinte link:
https://www.receita.fazenda.gov.br/Aplicacoes/SSL/ATBHE/assinadoc/ValidadorAssinaturas.app/valida.aspx
Pelo que estou entendendo você está assinando a TAG "<nfse:InfDeclaracaoPrestacaoServico>", não deveria ser a TAG "<nfse:Rps>"? Como está o exemplo do XML fornecido pela prefeitura ou no manual? Podes fornecer o manual para darmos
uma olhada?
Apenas por garantia, seu certificado é ICP Brasil, está valido e não revogado correto?
Abraço.
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 08:57:21
|
rafaelmw
JavaC Membro
Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline
|
Então as informações sobre a NFSE se encontram no link ao lado (inclusive lá tem um exemplo). > https://docs.google.com/document/d/1B6L11ZGv2iXMfxCtIJxgzLaDCyeF-tCJ82ELysnJaTs/edit
Sobre o certificado é sim ICP Brasil e esta valido.Sobre a assinatura eu estou assinando a tag "<nfse:Rps>" e não a "<nfse:InfDeclaracaoPrestacaoServico>". Agora estou em duvida no que colocar no digest value. Como que funciona a geração desse valor ?
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 09:39:36
|
rafaelmw
JavaC Membro
Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline
|
Esse aqui é o codigo que estou utilizando. Vale lembrar que estou utilizando as classes que gerei absorvendo o .xsd e para transmitir estou utilizando as classes que gerei utilizando o .wsdl
Esse é o metodo que gera a certificacao
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 10:11:00
|
cado_arena
JavaC Membro
Membro desde: 06/08/2013 15:11:59
Mensagens: 31
Offline
|
Rafael,
Já tentou enviar sem setar o Digestvalue?
Para gerar o Digestvalue dê uma olhada nos dois links a seguir, o primeiro resume como deve ser gerado o Digestvalue e o segundo é uma classe que contém um trecho que gera o Digestvalue para a NFe de produtos, mas deve servir para a sua NFSe também.
http://pt.stackoverflow.com/questions/423/como-calcular-o-digestvalue-do-xml
http://www.guj.com.br/java/83758-assinaturas-de-arquivos-xml-da-nfe#448662
Até.
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 11:00:11
|
rafaelmw
JavaC Membro
Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline
|
sem o digest value eu recebo
<?xml version="1.0"?>
<GerarNfseResposta xmlns="http://nfse.goiania.go.gov.br/xsd/nfse_gyn_v02.xsd">
<ListaMensagemRetorno>
<MensagemRetorno>
<Codigo>E160</Codigo>
<Mensagem>Arquivo em desacordo com o XML Schema.</Mensagem>
<Correcao>Consulte o Manual da NFS-e para saber quais são as versões de XML Schema suportadas pelo sistema.</Correcao>
</MensagemRetorno>
</ListaMensagemRetorno>
</GerarNfseResposta>
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 11:20:39
|
cado_arena
JavaC Membro
Membro desde: 06/08/2013 15:11:59
Mensagens: 31
Offline
|
Rafael,
Verifique os links que te passei, você precisará alterar o seguinte trecho de sua classe.
Você está perto, precisa de alguns ajustes apenas. Caso não consiga post que te ajudaremos. reveja o trecho que mencionei, principalmente como você está setando o DigestValue.
Você não precisa setar o valor do DigestValue, ele será criado conforme o método que você definir.
Até.
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 11:53:51
|
rafaelmw
JavaC Membro
Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline
|
Então eu também esperava que esse valor fosse gerado, porem ele não é... imagino que esteja faltando algo que eu nao esteja vendo ... algum metodo que tenho que chamar manualmente para que o valor seja gerado...
estou anexando o jar das classes que estou usando, e as classes de comunicacao obtidas com o wsdl.
Nome do arquivo |
nfse_gyn_v02.jar |
Download
|
Descrição |
nfse |
Tamanho |
816 Kbytes
|
Baixado: |
339 vez(es) |
Nome do arquivo |
comunicacao.rar |
Download
|
Descrição |
comunicacao |
Tamanho |
5 Kbytes
|
Baixado: |
288 vez(es) |
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 14:36:20
|
cado_arena
JavaC Membro
Membro desde: 06/08/2013 15:11:59
Mensagens: 31
Offline
|
Rafael,
O que temos que resolver é a assinatura e não a comunicação. No link que te passei para verificar a assinatura, a receita validou o arquivo?
https://www.receita.fazenda.gov.br/Aplicacoes/SSL/ATBHE/assinadoc/ValidadorAssinaturas.app/valida.aspx
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 14:45:36
|
rafaelmw
JavaC Membro
Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline
|
É, eu imagino que não seja a comunicação, só coloquei ela pois as vezes alguém desenvolveu utilizando algo parecido e pode notar algo de diferente. E quanto a validacao no site aparece para mim "A assinatura digital do documento fornecido não é válida. ". Sera que é o meu signature value ?
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 15:09:29
|
cado_arena
JavaC Membro
Membro desde: 06/08/2013 15:11:59
Mensagens: 31
Offline
|
Rafael,
Gere o XML assinado sem o DigestValue e veja se é validado.
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 15:19:23
|
rafaelmw
JavaC Membro
Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline
|
mesmo erro... =/
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 15:25:26
|
cado_arena
JavaC Membro
Membro desde: 06/08/2013 15:11:59
Mensagens: 31
Offline
|
Rafael,
Estou testando com a classe que te informei para ver se assina com o DigestValue o seu XML e passa na validação da receita. Depois posto aqui.
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 15:56:05
|
rafaelmw
JavaC Membro
Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline
|
Então, nao cheguei nem a testar tentando pegar o xml e assinando manualmente... estava tentando utilizar o que o xsd já havia me gerado... mais se vc esta conseguindo de outra forma poste ai que eu dou uma olhada...
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 17/08/2015 16:17:52
|
cado_arena
JavaC Membro
Membro desde: 06/08/2013 15:11:59
Mensagens: 31
Offline
|
Rafael,
Usando o assinador de NFe de produto e incluindo um atributo de Id na TAG Rps consegui gerar uma assinatura com o DigestValue que foi validada pela Receita. Segundo o documento que você compartilhou, Goiania segue o padrão ABRASF 2.0. Fui atrás da documentação e vi que seu XMl está errado, baixe o manual da versão 2.0 pelo seguinte endereço:
http://www.abrasf.org.br/paginas_multiplas_detalhes.php?cod_pagina=1&titulo=TEMAS%20T%C9CNICOS&data=nao
Veja que no item 4.5.3 - Geração de NFS-e, informa o conteúdo do "GerarNfseEnvio" tem que tem o tipo composto(tc) "tcDeclaracaoPrestacaoServico" que possui as estrutura de "InfDeclaracaoPrestacaoServico" e "Signature". Veja o exemplo:
A o atributo "Id" da tag "RPS" é o que será assinado. Usando a classe do seguinte link com um pequeno ajuste você irá conseguir gerar a assinatura.
http://www.guj.com.br/java/83758-assinaturas-de-arquivos-xml-da-nfe#448662
Aqui no fórum também você consegue uma classe para assim como a de cima para fazer a assinatura, por exemplo no link a seguir:
http://www.javac.com.br/jc/posts/list/994-nfe-cce-e-dpec-assinatura-de-todos-os-xmls.page
No método assinar que o macial disponibilizou você pode alterar o tipo para a tag que você quer assinar, que seria a RPS. Então no seu caso o método da classe poderia ficar assim:
Da pra melhorar, foi só uma palha.
Espero ter ajudado, qualquer coisa chama ai.
Esta mensagem foi editada 2 vezes. Última atualização foi em 17/08/2015 16:20:54
|
|
|
|