Amazon SimpleDB: проблема KeyStoreException при доступе к хранилищу доверенных сертификатов - PullRequest
0 голосов
/ 05 августа 2011

Внезапно мое Java-приложение, использующее SimpleDB, больше не работает.Я использую Java AWS SDK версии 1.2.4 в Windows 7. У меня есть следующее исключение:

java.security.KeyStoreException: problem accessing trust storejava.io.IOException: Invalid keystore format
com.sun.net.ssl.internal.ssl.TrustManagerFactoryImpl.engineInit(TrustManagerFactoryImpl.java:55)
javax.net.ssl.TrustManagerFactory.init(TrustManagerFactory.java:230)
org.apache.http.conn.ssl.SSLSocketFactory.createSSLContext(SSLSocketFactory.java:190)
org.apache.http.conn.ssl.SSLSocketFactory.createDefaultSSLContext(SSLSocketFactory.java:209)
org.apache.http.conn.ssl.SSLSocketFactory.<init>(SSLSocketFactory.java:333)
org.apache.http.conn.ssl.SSLSocketFactory.getSocketFactory(SSLSocketFactory.java:165)
org.apache.http.impl.conn.SchemeRegistryFactory.createDefault(SchemeRegistryFactory.java:45)
org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager.<init>(ThreadSafeClientConnManager.java:98)
com.amazonaws.http.HttpClientFactory.createHttpClient(HttpClientFactory.java:67)
com.amazonaws.http.AmazonHttpClient.<init>(AmazonHttpClient.java:111)
com.amazonaws.AmazonWebServiceClient.<init>(AmazonWebServiceClient.java:59)
com.amazonaws.services.simpledb.AmazonSimpleDBClient.<init>(AmazonSimpleDBClient.java:118)

В чем может быть причина и как решить проблему?

1 Ответ

1 голос
/ 05 августа 2011

Извините за ответ, но я решил проблему.Это было вызвано моим файлом сертификата, указанным этими инструкциями, загруженными ServletContextListener, определенным в моем web.xml

 String sslCertPath = contextEvent.getServletContext().getRealPath(
   "/WEB-INF/classes/jssecacerts");
 System.setProperty("javax.net.ssl.trustStore", sslCertPath);

Закомментируя эти строки, все работает.Это вызвано повреждением этого файла.

После этого я исправил хранилище ключей, раскомментировал строки, немного поругался с tomcat , и после этого все снова заработало, такжес моими сертификатами на месте.

...