Himanshu Thube wrote:
Hi

I am trying to suggest Apache Http client library against SUN javax.net.ssl for our application, our application requirement is as follows :

1. SSL support

HttpClient makes no assumptions about the underlying Transport Level Security. This is completely abstracted away by Socket Factories. You may use any SSL Implementation of your choice.


see the SSL Guide for more detailed information:
http://jakarta.apache.org/commons/httpclient/sslguide.html

2. Reuse the SSLSession / HttpState while reconnecting to web server (Apache)

HttpClient can reuse open connections through a connection pool. You must do proper SSL session handling yourself.


3. Restablishing Http(s) connection multiple times to web server

No problem.

4. HttpClient should have same behaviour like a Browser (IE)

What do you mean exactly? HTTP is a standard. We follow the standards. For convenience we have support for 'browser compatibility' mode in some places like Cookie handling, to mimic common bugs in popular browsers. HttpClient also has an option (strict mode = off) to be forgiving about server-side HTTP misbehaviour (like plain wrong headers).


5. Asynchronous communication where Http client opens connection and should recieve data from server whenever server has some data for http client.

You can get the response data as a non-buffered input stream. Reading is blocking. However you will need to account for connection timeouts.


6. Other requirements are Performance, etc..

HttpClient performs extremely well (set logging to a high level).

From the web I found few comparisons but some of them were vague (e.g. One features page of Http client it is written "The jdk has the HttpUrlConnection which is limited and in many ways flawed") but there is no concrete explaination for this.

Another comparison link http://www.nogoop.com/product_16.html#compare does not provide sufficient comparison for my requirement.

That comparison seems up to date, even though it has been online for several years now. I would say 'fix turnaround' is very high here though.


Can someone provide concrete link or information, about comparison between Apache Http client library against SUN javax.net.ssl for my requirements ?

None that I know of. If you find any third party reviews of HttpClient, please let us know.


For my requirement, I came up with only one valid point where Apache Http client library provides a API where I can associate HttpState with Http(s) connection. I guess if I dig more into JDK I will also find a way to do this over there.

One more question - Does HttpState contain the Credentials ? Does this also contain SSL information (certificates, etc...) It is just a marker interface at the moment. So does it contain certificates, etc... like SUN's SSLSession ?

HttpState does contain the credentials. However SSL certificates are completely handled by the underlying SSL implementation. HttpClient does not handle those for you.


Regards
Himanshu

HTH

Ortwin Glück

--
 _________________________________________________________________
 NOSE applied intelligence ag

 ortwin glück                      [www]      http://www.nose.ch
 software engineer                 [email] [EMAIL PROTECTED]
 hardturmstrasse 171               [pgp id]           0x81CF3416
 8005 zürich                       [office]      +41-1-277 57 35
 switzerland                       [fax]         +41-1-277 57 12

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to