3

GrailsでCertificateExpiredExceptionをキャッチできません。コードに例外を追加すると、「CatchステートメントのパラメータータイプはThrowableのサブクラスではありません」というメッセージが表示されます。メッセージ。一般的な「例外」をcatchパラメータとして指定すると、機能します。このSSLエラーをトラップし、ユーザーに意味のある応答を提供するにはどうすればよいですか?

サービスの例を次に示します。

class MyService {

    static transactional = false

    String someUrl = 'https://example.com'

    def getThings() {

        def conn
        try {
            conn = someUrl.toURL().openConnection()
        } catch (CertificateExpiredException e) { // doesn't like this
            log.debug e // doesn't work?
            return "SSL error, no results returned."
        }

        if(conn.responseCode == 200){
            // do stuff
        }
    }
}
4

1 に答える 1

4

インポートを追加する必要があります:

import java.security.cert.CertificateExpiredException

class MyService {
   ...
}
于 2013-02-05T04:46:51.707 に答える