Что является заменой KeyStore API в клиенте Jetty http? - PullRequest
3 голосов
/ 01 ноября 2011

Все методы, связанные с хранилищем ключей, помечены как устаревшие в документации Jetty, но они не относятся к API замены.Какой API следует использовать вместо этого?

http://download.eclipse.org/jetty/stable-7/apidocs/org/eclipse/jetty/client/HttpClient.html

1 Ответ

4 голосов
/ 14 ноября 2011

Вместо этого используйте фабрику контекста ssl. например,

        SslContextFactory sslContextFactory = new SslContextFactory();
        URL keyStoreUrl = this.getClass().getClassLoader().getResource("XXXXXX.pfx");

        URL trustStoreUrl = this.getClass().getClassLoader().getResource("XXXX.jks");

        sslContextFactory.setKeyStoreType("pkcs12");
        sslContextFactory.setTrustStoreType("jks");
        sslContextFactory.setKeyStore(keyStoreUrl.toString());
        sslContextFactory.setKeyStorePassword(KEY_STORE_PASS);

        sslContextFactory.setNeedClientAuth(true);
        sslContextFactory.setValidateCerts(false);
        sslContextFactory.setTrustStore(trustStoreUrl.toString());
        sslContextFactory.setTrustStorePassword(KEY_STORE_PASS);
        sslContextFactory.setKeyManagerPassword(KEY_STORE_PASS);


        httpClient = new HttpClient(sslContextFactory);
...