0

このJava+SSLチュートリアルを実行していますが、次のエラーが発生します。

main, handling exception: javax.net.ssl.SSLHandshakeException: Received fatal alert: certificate_unknown
javax.net.ssl.SSLHandshakeException: Received fatal alert: certificate_unknown
    at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Unknown Source)
    at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.recvAlert(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(Unknown Source)
    at com.sun.net.ssl.internal.ssl.AppInputStream.read(Unknown Source)
    at sun.nio.cs.StreamDecoder.readBytes(Unknown Source)
    at sun.nio.cs.StreamDecoder.implRead(Unknown Source)
    at sun.nio.cs.StreamDecoder.read(Unknown Source)
    at java.io.InputStreamReader.read(Unknown Source)
    at java.io.BufferedReader.fill(Unknown Source)
    at java.io.BufferedReader.readLine(Unknown Source)
    at java.io.BufferedReader.readLine(Unknown Source)
    at EchoServer.main(EchoServer.java:24)

例外が発生するコードの行は次のとおりです。

        while ((string = bufferedreader.readLine()) != null) {

私はここで何が間違っているのですか?その例が書かれてから状況は変わりましたか?

4

1 に答える 1

-2

おそらく、何らかの理由で証明書が有効でない (またはロードされていない) 可能性があります。デバッグモードを有効にすると、問題をさらに見つけるのに役立ちます

System.setProperty("javax.net.debug", "all");

また、自己署名証明書を使用している場合は、http: //ctasada.blogspot.com.es/2010/11/httpclient-use-self-signed-certificates.htmlを参照してください。

于 2012-04-24T21:05:56.937 に答える