2011-08-08 16 views
3

私のアプリはSSLを介して他のWebサービスに照会します。私はApache HttpClientを使用して、サーバー上で他のWebサービスにhttps POST呼び出しを作成しました。 App Engineにアプリをデプロイすると、次のエラーが表示されます。App EngineでHTTPSコールを作成する方法

java.lang.NoClassDefFoundError: javax.net.ssl.KeyManagerFactory is a restricted class. 
Please see the Google App Engine developer's guide for more details. 

Google App EngineでHTTPSコールを作成するにはどうすればよいですか。

答えて

4

Apache HttpClientは、App Engineによってout-of-the-boxに対応していません。 UrlFetchをラップするカスタムConnectionManagerを作成する必要があります。 This postはそれをうまく説明し、サンプルコードを提供します。これまでApp Engineでこのコードを使用していました。

1

URLクラスを使用して、app-engineでHTTPS接続を行うことができます。このような

何か -

URL url = new URL(yourHttpsURL); 
BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream())); 
StringBuilder responseBody = new StringBuilder(); 
String line; 

while ((line = reader.readLine()) != null) 
    responseBody.append(line); 

reader.close(); 

アプリエンジンは、低レベルのAPIでFetchOptionsをクラスを使用してホストの検証をサポートしています。

関連する問題