Autor |
Mensagem |
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 27/02/2014 08:35:07
|
macspace
JavaC Membro
Membro desde: 02/01/2012 19:18:10
Mensagens: 15
Offline
|
Bom dia a todos,
eu estou tendo o erro acima ao tentar transmitir uma NFS-e para a prefeitura de Maringá/PR, e só recebo esse erro quando uso um certificado emitido por uma tal de VALID, se uso um certificado emitido pela SERASA funciona.
Assinar o XML vai sem problemas, o erro acontece quando tendo executar o método de envio pelo STUB gerado pelo Axis2 1.6.2, eu já tentei fazer a transmissão dos 2 jeitos abaixo:
Jeito 1, setando as properties do java, código retirado aqui do fórum:
Jeito 2, usando as classes SocketFactoryDinamico, Protocol, também retiradas aqui do fórum:
Mais detalhes:
Ao emitir com o certificado da VALIDA dá os seguintes erros:
Jeito 1: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
Jeito 2: javax.net.ssl.SSLHandshakeException: Received fatal alert: unknown_ca
Ao emitir com o certificado da SERASA:
Jeito 1: Sucesso, transmite
Jeito 2: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Obrigado desde já pela ajuda!
Esta mensagem foi editada 1 vez. Última atualização foi em 28/02/2014 09:51:12
|
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 27/02/2014 09:00:22
|
paulork
JavaC Membro
![[Avatar]](/jc/images/avatar/edfbe1afcf9246bb0d40eb4d8027d90f.png)
Membro desde: 01/10/2012 10:02:03
Mensagens: 27
Offline
|
Amigo, se tiver algum problema com o certificado também não vai passar...
Possivelmente as classes de envio estão funcionando se um dos certificados passa... a falha é no handshake (aperto de mão) do SSL...
Outra coisa, você tem a cadeia de certificados do site no seu KeyStore? Essas são geradas pelo BuildAllCacerts...
Você também pode fazer um teste de transmissão pelo SOAPUI de um xml de exemplo pra ver se envia...
vou ver se acho uma outra classe que usava para envio... não era os Stubs gerados....
abraço
Esta mensagem foi editada 2 vezes. Última atualização foi em 27/02/2014 09:03:20
|
Paulo R. K.
----------------------------------------
Desenvolvedor Java/Delphi @ 2014 |
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 27/02/2014 09:57:44
|
macspace
JavaC Membro
Membro desde: 02/01/2012 19:18:10
Mensagens: 15
Offline
|
Paulo,
no GUJ tem um cara com o mesmo problema que o meu, lá ele postou dizendo que encontrou em outros fóruns que o problema pode ser o fato desse certificado da VALID ser SHA-2 ao invés de SHA-1, será que pode ser isso? E se for, tem idéia do que dá para ser feito ?
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 28/02/2014 09:50:37
|
macspace
JavaC Membro
Membro desde: 02/01/2012 19:18:10
Mensagens: 15
Offline
|
Bom dia Pessoal, depois de muito pesquisar e sofrer, finalmente consegui resolver os problemas, segue abaixo os passos :
1 - Atualizar a cadeia de certificados do Windows:
1.1 - Acessar o site: http://www.iti.gov.br/icp-brasil/repositorio/144-icp-brasil/repositorio/3886-repositorio-de-certificados-arquivo-unico-compactado e fazer o download do arquivo ZIP
1.2 - Instalar os certificados que estão no zip. No meu caso, eu atualizei somente os que fazer parte da cadeia de certificados da VALID (AC_BR_RFB_G2.crt, AC_BR_RFB_G3.crt, AC_RFBv2.crt, AC_RFBv3.crt, AC_VALID.crt, AC_Valid_Brasil.crt, AC_VALID_RFB.crt, AC_VALID_SPB.crt, ICP-Brasil.crt, ICP-Brasilv2.crt, ICP-Brasilv3.crt).
2 - Reinstalar o cerficado da VALID
2.1 - Eu nem cheguei a remover, instalei por cima
2.2 - Na instalação marcar a opção para que ele seja exportado
3 - Exportar o certificado
3.1 - Marcar a opção para incluir todos certificados do caminho de certificação e a opção Exportar todas as propriedades extendidas
3.2 - A senha que ele pede, eu coloquei a mesma do certificado
Pronto, agora o certificado esta pronto para ser usado, basta fazer a transmissão utilizando o código abaixo:
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 28/02/2014 11:59:23
|
paulork
JavaC Membro
![[Avatar]](/jc/images/avatar/edfbe1afcf9246bb0d40eb4d8027d90f.png)
Membro desde: 01/10/2012 10:02:03
Mensagens: 27
Offline
|
Show de bola amigo, que bom que conseguiu resolver o seu problema... obrigado pela contribuição também.
Esse erro de SSL Handshake tem um monte de variáveis... mas realmente as cadeias de certificados precisam estar na máquina e na maioria dos casos é preciso usar o certificado (A1) exportado em vez de usado aquele que você recebe quando o compra... não vai ser sempre esse (ou só esse) problema, mas é um deles...
valeu amigo, bons códigos...
Paulo
|
Paulo R. K.
----------------------------------------
Desenvolvedor Java/Delphi @ 2014 |
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 07/07/2017 10:45:33
|
samuelpc7
JavaC Membro
Membro desde: 08/08/2016 09:36:04
Mensagens: 42
Offline
|
macspace wrote:Bom dia Pessoal, depois de muito pesquisar e sofrer, finalmente consegui resolver os problemas, segue abaixo os passos :
1 - Atualizar a cadeia de certificados do Windows:
1.1 - Acessar o site: http://www.iti.gov.br/icp-brasil/repositorio/144-icp-brasil/repositorio/3886-repositorio-de-certificados-arquivo-unico-compactado e fazer o download do arquivo ZIP
1.2 - Instalar os certificados que estão no zip. No meu caso, eu atualizei somente os que fazer parte da cadeia de certificados da VALID (AC_BR_RFB_G2.crt, AC_BR_RFB_G3.crt, AC_RFBv2.crt, AC_RFBv3.crt, AC_VALID.crt, AC_Valid_Brasil.crt, AC_VALID_RFB.crt, AC_VALID_SPB.crt, ICP-Brasil.crt, ICP-Brasilv2.crt, ICP-Brasilv3.crt).
2 - Reinstalar o cerficado da VALID
2.1 - Eu nem cheguei a remover, instalei por cima
2.2 - Na instalação marcar a opção para que ele seja exportado
3 - Exportar o certificado
3.1 - Marcar a opção para incluir todos certificados do caminho de certificação e a opção Exportar todas as propriedades extendidas
3.2 - A senha que ele pede, eu coloquei a mesma do certificado
Pronto, agora o certificado esta pronto para ser usado, basta fazer a transmissão utilizando o código abaixo:
estou tentando baixar atravez desse link, porem acho q o site ta com problemas, alguem tem outro link ou poderia me enviar por email por gentileza?
samuel@athenemail.com.br
|
|
|
![[Post New]](/jc/templates/javac/images/icon_minipost_new.gif) 20/09/2017 07:48:22
|
Wallfox
JavaC Membro
Membro desde: 30/03/2012 11:59:58
Mensagens: 92
Offline
|
macspace wrote:Bom dia Pessoal, depois de muito pesquisar e sofrer, finalmente consegui resolver os problemas, segue abaixo os passos :
1 - Atualizar a cadeia de certificados do Windows:
1.1 - Acessar o site: http://www.iti.gov.br/icp-brasil/repositorio/144-icp-brasil/repositorio/3886-repositorio-de-certificados-arquivo-unico-compactado e fazer o download do arquivo ZIP
1.2 - Instalar os certificados que estão no zip. No meu caso, eu atualizei somente os que fazer parte da cadeia de certificados da VALID (AC_BR_RFB_G2.crt, AC_BR_RFB_G3.crt, AC_RFBv2.crt, AC_RFBv3.crt, AC_VALID.crt, AC_Valid_Brasil.crt, AC_VALID_RFB.crt, AC_VALID_SPB.crt, ICP-Brasil.crt, ICP-Brasilv2.crt, ICP-Brasilv3.crt).
2 - Reinstalar o cerficado da VALID
2.1 - Eu nem cheguei a remover, instalei por cima
2.2 - Na instalação marcar a opção para que ele seja exportado
3 - Exportar o certificado
3.1 - Marcar a opção para incluir todos certificados do caminho de certificação e a opção Exportar todas as propriedades extendidas
3.2 - A senha que ele pede, eu coloquei a mesma do certificado
Pronto, agora o certificado esta pronto para ser usado, basta fazer a transmissão utilizando o código abaixo:
@macspace
Eu estou recebendo:
javax.net.ssl.SSLHandshakeException: Received fatal alert: unknown_ca
Já fiz a instalação dos certificados e nada, porém esta mensagem não acontece com a Sefaz de SP.
Alguém tem alguma ideia?
|
|
|
|
|