Applet Java acessando WebService .NET

3 respostas
A

Fala moçada…
to com o seguinte problema:
Tenho um applet Java acessando um WebService via HTTPS.

Se fosse HTTP, não haveria problema. As classes ja estão montadas e tudo funciona bem.

Mas quando mudamos o servidor para HTTPS, o sistema não consegue comunicar e eu recebo a seguinte exceção:

Caused by: 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

Pelo pouco que eu entendo, parece ser um problema de validação do certificado do servidor.

Alguém tem alguma idéia de como eu posso resolver esse problema?

Valeu

3 Respostas

T

Você precisa cadastrar a autoridade certificadora que emitiu o certificado para esse site .NET no arquivo cacerts, contido no subdiretório jre/lib/security.

Exemplo para o Windows e para a versão 1.6.0_01:
c:\Arquivos de Programas\Java\jre1.6.0_01\lib\security

rbamartins

thingol:
Você precisa cadastrar a autoridade certificadora que emitiu o certificado para esse site .NET no arquivo cacerts, contido no subdiretório jre/lib/security.

Exemplo para o Windows e para a versão 1.6.0_01:
c:\Arquivos de Programas\Java\jre1.6.0_01\lib\security

olá thigol… tudp bem?

me diz uma coisa…

para esse erro citado acima, se eu passasse o caminho da chave pública do certificado em questão através do VM-ARGUMENTS do eclipse, funcionaria também??

Para que outras pessoas acessem um serviço via https, que eu tenho aqui, teria que passar a elas minha chave pública correto?

abraços

T

O correto, como de costume, para evitar problemas de ficar tendo de mexer no arquivo cacerts (que é o jeito mais simples de fazer isso, se você não quer pagar um certificado) é comprar um certificado de verdade e pô-lo no seu web service .NET. Ou então talvez seja possível no seu applet indicar que a autoridade certificadora que emitiu seu certificado e que pode ser usada no handshake, mas não sei exatamente que System.properties que você tem de mexer, no caso específico da Sun JVM e quais os passos corretos a tomar.

Criado 28 de maio de 2007
Ultima resposta 28 de mai. de 2007
Respostas 3
Participantes 3