2012-02-10 4 views
1

私は奇妙な問題が発生しています。私はHttpURLConnectionを使用していて、conn.readInputStream()のときはRuntimeExceptionとなります。必ずしも複製可能とは限りませんが、このスタックトレースはユーザから報告されています。私はこの問題に直面したことはありませんでしたので、私は個人的にエラーの原因を知りませんでした。このスタックトレースについて何か提案してください。HttpURLConnection RuntimeException

java.lang.RuntimeException: java.util.NoSuchElementException 
at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.verifyCertificateChain(OpenSSLSocketImpl.java:692) 
at org.apache.harmony.xnet.provider.jsse.NativeCrypto.SSL_do_handshake(Native Method) 
at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:485) 
at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:323) 
at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.setupSecureSocket(HttpConnection.java:167) 
at org.apache.harmony.luni.internal.net.www.protocol.https.HttpsURLConnectionImpl$HttpsEngine.makeSslConnection(HttpsURLConnectionImpl.java:479) 
at org.apache.harmony.luni.internal.net.www.protocol.https.HttpsURLConnectionImpl$HttpsEngine.makeConnection(HttpsURLConnectionImpl.java:419) 
at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl … veResponse(HttpURLConnectionImpl.java:1038) 
at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:523) 
at org.apache.harmony.luni.internal.net.www.protocol.https.HttpsURLConnectionIm … nputStream(HttpsURLConnectionImpl.java:283) 
at com.facebook.android.Util.openUrl(Util.java:245) 
at com.facebook.android.Facebook.request(Facebook.java:730) 
at com.facebook.android.AsyncFacebookRunner$2.run(AsyncFacebookRunner.java:313) 
Caused by: java.util.NoSuchElementException 
at java.util.LinkedList$LinkIterator.next(LinkedList.java:122) 
at org.apache.harmony.security.x501.Name.getName0(Name.java:195) 
at org.apache.harmony.security.x501.Name.getName(Name.java:135) 
at javax.security.auth.x500.X500Principal.getCanonicalName(X500Principal.java:155) 
at javax.security.auth.x500.X500Principal.hashCode(X500Principal.java:286) 
at java.util.HashMap.get(HashMap.java:302) 
at org.apache.harmony.xnet.provider.jsse.IndexedPKIXParameters.isTrustAnchor(IndexedPKIXParameters.java:113) 
at org.apache.harmony.xnet.provider.jsse.TrustManagerImpl.cleanupCertChain(TrustManagerImpl.java:194) 
at org.apache.harmony.xnet.provider.jsse.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:144) 
at org.apache.harmony.xnet.provider.jsse.TrustManagerImpl.checkServerTrusted(TrustManagerImpl.java:132) 
at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.verifyCertificateChain(OpenSSLSocketImpl.java:681) 
... 12 more 

答えて

3

この問題は、あなたのアプリケーションからのHTTPS接続を作成している、そして、あなたのデバイス上で必要な証明書をインストールする必要があり、安全な接続を開くために、あなたが原因です。

+0

どうすればいいですか?私はどこで証明書を入手できるのかを意味します。 – fdmirza

0

おそらく少し遅れますが、これは取得しようとしているリソースが存在しない場合に発生します。 たとえば、IDが500(/ user/500)のユーザーを取得しようとしていますが、このユーザーは呼び出すサーバーに存在しません。