Hi Experts,
any luck for help?
In nutshell,
People suggested two ways to do it
1)set context in httpconnection with custom TrustManager
2)Set TrustManager some other way .

in android org.apache.http.conn.ssl.SSLSocketFactory
SSLSocketFactory(SSLContext sslContext) method is not available.
see
http://hc.apache.org/httpcomponents-client/httpclient/apidocs/org/apache/http/conn/ssl/SSLSocketFactory.html
and

and
http://developer.android.com/reference/org/apache/http/conn/ssl/SSLSocketFactory.html

any help?
Thanks,
AndroidGuy
On Nov 18, 12:18 am, androidguy <[email protected]> wrote:
> Hi All,
> I am new to android.
> I have been trying to use httpclient to post data on https (secure).
> I have searched all forums of android but I could not find any
> solution that works with httpclient on https. I have seen some
> solutions using HttpsURLConnection. and SSLContext.
> I would like to go with httpclient not URLConnection as I require to
> manage cookies and al.
> I am looking for your exert advice on above matter.
> Thank you very much to all in advance.
>
> I have set <uses-permission
> android:name="android.permission.INTERNET" /> tag in
> AndroidManifest.xml .
> -------here is the log I am getting--------
> E/MessageSender(  822): Caught exception
> E/MessageSender(  822): javax.net.ssl.SSLException: Not trusted server
> certificate
> E/MessageSender(  822):   at
> org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake
> (OpenSSLSocketImpl.java:363)
> E/MessageSender(  822):   at
> org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl
> $SSLInputStream.<init>(OpenSSLSocketImpl.java
> :505)
> E/MessageSender(  822):   at
> org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.getInputStream
> (OpenSSLSocketImpl.java:446)
> E/MessageSender(  822):   at
> org.apache.http.impl.io.SocketInputBuffer.<init>
> (SocketInputBuffer.java:93)
> E/MessageSender(  822):   at
> org.apache.http.impl.SocketHttpClientConnection.createSessionInputBuffer
> (SocketHttpClientConnection.
> java:83)
> E/MessageSender(  822):   at
> org.apache.http.impl.conn.DefaultClientConnection.createSessionInputBuffer
> (DefaultClientConnection.j
> ava:170)
> E/MessageSender(  822):   at
> org.apache.http.impl.SocketHttpClientConnection.bind
> (SocketHttpClientConnection.java:106)
> E/MessageSender(  822):   at
> org.apache.http.impl.conn.DefaultClientConnection.openCompleted
> (DefaultClientConnection.java:129)
> E/MessageSender(  822):   at
> org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection
> (DefaultClientConnectionOper
> ator.java:136)
> E/MessageSender(  822):   at
> org.apache.http.impl.conn.AbstractPoolEntry.open
> (AbstractPoolEntry.java:164)
> --------------End log-----------
>
> I found solution of defining TrustManager in context but a constructor
> SSLSocketFactory(SSLcontext);
> available in httpclient version 4.0 but not available on android .
>
> As per some post
> I have also created DummySSLSocketFactory  and TrustManager.
> but I don't know how to use them with httpclient as
>
> Some Portion of code
>  SSLSocketFactory sslSocketFactory =  SSLSocketFactory.getSocketFactory
> ();
> sslSocketFactory.setHostnameVerifier
> (SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
>    supportedSchemes.register(new Scheme("https", sslSocketFactory,
> 443));
>
> SSLContext context = null;
>         try {
>             context = SSLContext.getInstance("TLS");
>             context.init(
>               null,
>               new TrustManager[] {new _FakeX509TrustManager()},
>               null);
>         } catch (Exception e) {
>             trace.log(Level.SEVERE, e.getMessage(), e);
>             //throw new HttpClientError(e.toString());
>             // TODO throw a more appropriate exception
>             throw new RuntimeException(e.toString());
>         }
>
> I have also tried one suggested by bala 
> onhttp://www.android-portal.com/2007/12/20/secure-server-socket-with-tl...
> but that one is not for httpclient.
>
> Once again thanks to all in advance.

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to