Login Registre-se
Projeto NFSe  XML
Índice dos Fóruns » NF-e / NFS-e / CT-e / CF-e / Certificados Digitais
Autor Mensagem
raffamz

JavaC Membro

Membro desde: 10/01/2013 09:37:57
Mensagens: 30
Offline

Se a Nfse de Curitiba é parecida com a do Rio, posso te ajudar tbm!
Qualquer coisa, vc já tem meu email.

raffamz - Raffa Magalhães
[Email]
thibeserra

JavaC Membro
[Avatar]

Membro desde: 15/05/2012 14:44:59
Mensagens: 108
Offline

raffamz wrote:Se a Nfse de Curitiba é parecida com a do Rio, posso te ajudar tbm!
Qualquer coisa, vc já tem meu email.


Então cara, lendo os manuais da NFS-e de Curitiba, esta utiliza ABRASF, aceitar certificados do tipo A1 e A3 (token) e deve ser assinado o XML da NFS-e.

abaixo segue o XML que o portal de Curitiba (http://isscuritiba.curitiba.pr.gov.br/portalnfse/) oferece como exemplo:



Abaixo segue o XSD



Será que o XML da Nota Carioca tem o mesmo estilo/schema?

Agora fugindo um pouco do atual problema, venho com uma dúvida. O que são esses padrões GINFES, ABRASF? Lembrando que o de Curitiba é o ABRASF.

Agradeço desde já

"Pensar é o trabalho mais pesado que há. Talvez seja essa a razão para tão poucos se dedicarem a isso." - Henry Ford
thibeserra

JavaC Membro
[Avatar]

Membro desde: 15/05/2012 14:44:59
Mensagens: 108
Offline

Pessoal, só pra reforçar, segue a citação do manual de utilização de webServices da NFS-e de Curitiba para assinatura digital do XML

Existem 2 (duas) tags que deverão ser transmitidas para o WebService e que devem ser
assinadas digitalmente utilizando um certificado digital válido emitido por uma entidade
certificadora credenciada a ICP – Brasil. As tags a serem assinadas digitalmente são (LoteRps
e todas as ocorrências de InfRps).


Fiquei em dúvidas tipo de assinar 2 tags no XML. Se alguém tiver algum exemplo ou alguma ajuda.

Valeu!

Esta mensagem foi editada 1 vez. Última atualização foi em 13/05/2013 15:23:41


"Pensar é o trabalho mais pesado que há. Talvez seja essa a razão para tão poucos se dedicarem a isso." - Henry Ford
victorr

JavaC Membro

Membro desde: 03/04/2013 15:29:44
Mensagens: 6
Offline

Também estou tentando seguir com um projeto NFSe para Salvador, que também utiliza o padrão ABRASF, alguém pode passar o contato para me dar uma luz, qualquer coisa q ajude?

Respondeu Jesus: Eu sou o Caminho, a Verdade e a Vida. Ninguém vai ao Pai, a não ser por Mim. (Jo. 14:6)
thibeserra

JavaC Membro
[Avatar]

Membro desde: 15/05/2012 14:44:59
Mensagens: 108
Offline

Boa tarde.

Pesquisando, encontrei uma forma de assinar o XML de Recepção de Lote da NFS-e Curitiba.

Segundo a documentação, deve ser assinado as tags LoteRps e todas as ocorrências de InfRps.

Criei uma aplicação de testes para testar a assinatura do XML. Realizei algumas mudanças na classe que assinava os XML's da NF-e. Segue:

Classe Assinador.java




Classe Main.java




Ainda não desenvolvi a classe de transmissão para processar o XML. Porém, validando o XML pelo programa que o Portal de Curitiba Oferece, este me aponta ser válido!

Segue o XML de exemplo assinado:



Agora vou tentar desenvolver a classe que transmite este XML.

Qualquer dica, ajuda aceito também..rs.

Obrigado.

"Pensar é o trabalho mais pesado que há. Talvez seja essa a razão para tão poucos se dedicarem a isso." - Henry Ford
tardelli13

JavaC Membro
[Avatar]

Membro desde: 17/05/2013 17:13:23
Mensagens: 8
Localização: São Paulo
Offline

hudson wrote:Opa amigo preciso de um exemplo ou algo que possa me ajudar,
meu sistema ja cria o XML, estou usando o UNINFSE para transmitir,
mas queria englobar tudo no meu sistema...
Assinar, transmitir, consultar o RPS...
Se pudesse postar algum exemplo agradeço


Boa tarde Hudson,

Poderia por gentileza passar algum exemplo de como regar os xml's?
[WWW]
tardelli13

JavaC Membro
[Avatar]

Membro desde: 17/05/2013 17:13:23
Mensagens: 8
Localização: São Paulo
Offline

Será que alguém poderia postar uma classe de exemplo para a geração dos XMLS da "NFS-E" com JAXB?
[WWW]
paulork

JavaC Membro
[Avatar]

Membro desde: 01/10/2012 10:02:03
Mensagens: 27
Offline

Pessoal, preciso de ajuda...

Alguém já chegou a fazer ou pelo menos tentou fazer o processo de geração, envio, etc, da NFSe da prefeitura de Maringá?

Gerei as classes de envio a partir do WSDL... Gerei as classes para geração do XML a partir do arquivo XSD...
Gerei o XML a partir da classes... assinei... mas enviar, "nem a pau"... sempre recebo dois erros dependendo do teste...



ou se não



isso no caso usando a classe "NFSeRecepcao" postada aqui no forum:


Já quando tento enviar via os Stubs gerados apartir do WSDL tenho o seguinte erro:


Usei as mesmas classes de assinatura e pré envio (SocketFactoryDinamico/Protocol/etc) que usei para o projeto de NFe que está 100% funcionando.

Alguém tem alguma idéia, classe de envio, exemplo de envio apartir de Stubs que eu posso usar?

Agradeço a atenção
-------------------------------
Paulo

Esta mensagem foi editada 1 vez. Última atualização foi em 13/06/2013 14:07:40


Paulo R. K.
----------------------------------------
Desenvolvedor Java/Delphi @ 2014
raffamz

JavaC Membro

Membro desde: 10/01/2013 09:37:57
Mensagens: 30
Offline

paulork wrote:Pessoal, preciso de ajuda...

Alguém já chegou a fazer ou pelo menos tentou fazer o processo de geração, envio, etc, da NFSe da prefeitura de Maringá?

Gerei as classes de envio a partir do WSDL... Gerei as classes para geração do XML a partir do arquivo XSD...
Gerei o XML a partir da classes... assinei... mas enviar, "nem a pau"... sempre recebo dois erros dependendo do teste...



ou se não



isso no caso usando a classe "NFSeRecepcao" postada aqui no forum:


Já quando tento enviar via os Stubs gerados apartir do WSDL tenho o seguinte erro:


Usei as mesmas classes de assinatura e pré envio (SocketFactoryDinamico/Protocol/etc) que usei para o projeto de NFe que está 100% funcionando.

Alguém tem alguma idéia, classe de envio, exemplo de envio apartir de Stubs que eu posso usar?

Agradeço a atenção
-------------------------------
Paulo



Amigo,

O erro 'PKIX path building failed' é quando a aplicação não acha o caminho do servidor. Vc baixou o certificado do servidor e anexou a sua keyStore?

Abraço

raffamz - Raffa Magalhães
[Email]
paulork

JavaC Membro
[Avatar]

Membro desde: 01/10/2012 10:02:03
Mensagens: 27
Offline

Sim, baixei a cadeia de certificados do site... Esse também tentei de varias formas: com BuildAllCacerts (modificada da nfe, 2,3,4x)... e com o KeyStore Explorer...
O certificado (pfx) que estou usando também é válido...

Estou com 3 cidades para fazer o geração e envio de NFSe e não tive sucesso em nenhuma delas... são elas: Maringá, Cachoeirinha e Salvador.
A primeira tive os erros que citei acima... a segunda me dá um erro de schema que não deveria dar, já que passou pela validação local do schema baixado do site... e a terceira não consegui nem gerar as classes a partir do WSDL pois as URLs constantes no WSDL não estão OKs:

ai diz que não encontrou o caminho...
Até agora não foi nada animador trabalhar com NFSe...
A única ajuda real provém daqui...

Agradeço a atenção
---------------------------------
Paulo R. K.

Paulo R. K.
----------------------------------------
Desenvolvedor Java/Delphi @ 2014
raffamz

JavaC Membro

Membro desde: 10/01/2013 09:37:57
Mensagens: 30
Offline

Não amigo, digo o certificado do servidor.....ao entrar na url do wsdl, clica no cadeado e peça para exibir os certificados, são aqueles que deve baixar tbm (acho que são dois).

raffamz - Raffa Magalhães
[Email]
paulork

JavaC Membro
[Avatar]

Membro desde: 01/10/2012 10:02:03
Mensagens: 27
Offline

Mas os certificados do site que você fala é o da URL de Produção e a de Homologação... é justamente a cadeia de certificados do site, é o que a classe BuildAllCacerts gera...
mas também fiz esse processo aí de ir no site de clicar no cadeado e importar os certificados para o repositório do windows...

o outro certificado que mencionei que era válido é o certificado que uso para a assinatura e o que contém a chave privada...

O erro 'PKIX path building failed' é quando a aplicação não acha o caminho do servidor.


Com as classes geradas a partir do WSDL não deveria enviar para o lugar correto?... já fiz inúmeras vezes isso para a NFe (DownloadNFe, Manifesto, etc), funcionou belezinha...

agradeço a atenção raffamz

Esta mensagem foi editada 1 vez. Última atualização foi em 18/06/2013 16:20:42


Paulo R. K.
----------------------------------------
Desenvolvedor Java/Delphi @ 2014
raffamz

JavaC Membro

Membro desde: 10/01/2013 09:37:57
Mensagens: 30
Offline

Paulo, desculpe o atraso na resposta!

Na verdade o certificado do servidor tbm deve constas no arquivo KeyStore (CACERTS), sendo assim ele "encontra o caminho"!


Abraço

raffamz - Raffa Magalhães
[Email]
paulork

JavaC Membro
[Avatar]

Membro desde: 01/10/2012 10:02:03
Mensagens: 27
Offline

Fala pessoal, para quem está com dificuldade para gerar as classes (Stubs) com o WSDL de Salvador... ou para o pessoal que não está conseguindo fazer o envio da NFSe de Salvador.
Depois de várias insistências consegui gerar os malditos STUBs para Salvador.

Vou descrever abaixo o que foi feito para isso:
- Bom, em primeiro lugar o WSDL de Salvador tem problemas, logo se nota ao tentar gerar as classes (Stubs) via Axis2
- É preciso ajustar isso
- O ERRO:

Como vc pode ver não é uma URL válida, logo não acha o XSD, logo dá erro, logo não gera as classes.

- A SOLUÇÃO:
Baixar os anexo dessa resposta e gerar novamente as classes via AXIS2 1.6.2. Deixe tudo na mesma pasta, os 3 arquivos e tente de novo.
Com os Stubs gerados dessa forma seu envio irá funcionar corretamente.
Código envio:


OBS: Esse apenas é o procedimento de Envio de Lote RPS...

--------------------------------------------------------------------------

Agora o problema que enfrento nesse momento:


Formato de assinatura que estou mandando (Tanto Rps quanto LoteRps, estão sendo assinados):


Formato de assinatura que um outro aplicativo (que está em funcionamento para Salvador) está mandando:


Repare que o "KeyInfo" contém outras TAGS e também acima disso muda um pouco a estrutura.
Já tentei assinar de 500 formas diferentes (inclusive como descrito aqui no forum e nada). Sempre a assinatura sai da primeira forma que apresentei acima e não da segunda.

Minhas perguntas:
- Alguém ai já fez a assinatura do XML para Salvador? Pode contribuir com a classe de assinatura? (Sei que quase ninguém gosta de contribuir depois que consegue, pois justamente não conseguiram ajuda, assim como não consegui com a historia do WSDL acima, mas se for sempre dessa forma ninguém sai do chão. Conhecimento é algo que precisa ser compartilhado!).
- Precisa daquelas tags extras:

como nesse exemplo acima (que inclusive diz no manual para serem evitadas)?
- Se sim. Como que eu faço isso? Como modifico a classe de assinatura para gerar essas TAGs a mais? (Procurei por tudo e em nenhum lugar diz como fazer, nem mesmo uma noçãozinha de como fazer).
- Quais TAGs preciso usar para assinatura? Rps ou InfRps? LoteRps ou EnviarLoteRpsEnvio? O lote deve ser assinado antes ou depois dos RPSs?

Agradeço a atenção de todos... assim que tiver a solução posto um Tutorial Completo de como solucionar, então se alguém quiser comtribuir, agradeço. Todos agradecem!
 Nome do arquivo envioloterps.wsdl [Disk] Download
 Descrição WSDL Salvador
 Tamanho 4 Kbytes
 Baixado:  701 vez(es)

 Nome do arquivo xsd1.xsd [Disk] Download
 Descrição XSD do segundo import
 Tamanho 2 Kbytes
 Baixado:  663 vez(es)

 Nome do arquivo xsd0.xsd [Disk] Download
 Descrição XSD do primeiro import
 Tamanho 1 Kbytes
 Baixado:  649 vez(es)

Esta mensagem foi editada 1 vez. Última atualização foi em 01/08/2013 17:38:36


Paulo R. K.
----------------------------------------
Desenvolvedor Java/Delphi @ 2014
paulork

JavaC Membro
[Avatar]

Membro desde: 01/10/2012 10:02:03
Mensagens: 27
Offline

Olá pessoal, quanto ao problema da assinatura do XML que comentei acima que estava tendo, consegui resolver, e como prometido vou descrever abaixo os passos e os códigos usados para isso.
Com isso então, contemplo ASSINATURA e ENVIO do lote de RPSs para Salvador. Espero que seja útil a muitos que não estão conseguindo informação nenhuma sobre e estão perdendo um tempão em cima disso como eu também perdi. E como tempo é dinheiro...

Bom, para começar, segue abaixo os métodos envolvidos diretamente com o sucesso da assinatura:
IMPORTs



após isso, a forma como uso esses métodos (no caso, estou carregando o XML de um arquivo, mas você pode gerá-lo via programação, isso é com você):


Abaixo o resultado da assinatura do arquivo. Perceba que ele coloca um atributo ID na TAG Signature quando a opção true é usada no método assinar. Essa assinatura fica logo após as TAGs InfRps e LoteRps. Perceba também que as TAGs DigestValue, SignatureValue e X509Certificate eu abreviei aqui por motivos óbvios.


Bom pessoal, estes foram os passos que usei para a solução do problema (E1 - Assinatura do Hash não confere)... A solução do problema do envio (wsdl, xsd, stubs) está descrita acima.
Não descrevi o processo de geração do XML, pois esse não tem muitas complicações. Ou você gera ele no braço (via String) ou você gera as classes via XSD e usa os objetos, isso é com você.

Espero que tenha ajudado alguém com isso e que o próximo que implementar a integração com Salvador não tenha a mesma dor de cabeça do que eu. Conhecimento precisa ser compartilhado!

Agradeço a atenção de todos e tendo alguma dúvida é só perguntar... até mais

Paulo R. K.
----------------------------------------
Desenvolvedor Java/Delphi @ 2014
 
Índice dos Fóruns » NF-e / NFS-e / CT-e / CF-e / Certificados Digitais
Ir para:   
Powered by JForum 2.1.9 © JForum Team