X509TrustManager Remplacer sans permettre à TOUS les certs?

Je suis actuellement en substituant X509TrustManager pour permettre à tous les certs en tant que temporairement "solution" (un dangereux qui plus est). Je suis à essayer de comprendre comment je pourrais aller sur l'ajout en sorte qu'il accepte un cert que je vais avoir des problèmes avec jusqu'à ce qu'une bonne correction peut être fait (ce qui est hors de mes mains en ce moment). Voici le code actuel.

TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager() {
    @Override
    public java.security.cert.X509Certificate[] getAcceptedIssuers() {
        return null;
    }

    @Override
    public void checkClientTrusted(java.security.cert.X509Certificate[] certs, String authType) {
    }

    @Override
    public void checkServerTrusted(java.security.cert.X509Certificate[] certs, String authType) {
    }
}};

try {
    SSLContext sc = SSLContext.getInstance("SSL");
    sc.init(null, trustAllCerts, new java.security.SecureRandom());
    HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
} catch (GeneralSecurityException e) {
    System.out.println(e.getStackTrace());
}
pourquoi retourner la valeur null au lieu d'un tableau vide? la spécification dit de retourner une valeur non nulle de la matrice.

OriginalL'auteur user1015523 | 2012-08-08