www-announce mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Oleg Kalnichevski <ol...@apache.org>
Subject [ANNOUNCEMENT] HttpComponents HttpClient 4.0 (GA) release
Date Thu, 13 Aug 2009 12:26:22 GMT
The HttpComponents project is pleased to announce the first stable (GA)
release of Apache HttpClient 4.0

HttpClient 4.0 represents a complete, ground-up redesign and almost a
complete rewrite of the HttpClient 3.x codeline. This release finally
addresses several design flaws that existed since the 1.0 release and
could not be fixed without a major code overhaul and breaking API

Architectural changes

* Redesign of the HttpClient internals addressing all known major
architectural shortcomings of the 3.x codeline.

* Cleaner, more flexible and expressive API.

* More modular structure.

* Better performance and smaller memory footprint due to a more
efficient HTTP transport based on HttpCore. 

* Implementation of cross-cutting HTTP protocol aspects through protocol

* Improved connection management, better handling of persistent
connections, support for stateful connections

* Pluggable redirect and authentication handlers.   

* Improved support for sending requests via a proxy or a chain of

* More flexible SSL context customization 

* Reduced intermediate garbage in the process of generating HTTP
requests and parsing HTTP responses 

All upstream projects are strongly encouraged to upgrade.

Important notes

* Future releases of HttpMime module may be binary incompatible with
this release due to possible API changes in Apache Mime4J. Apache Mime4J
is still being actively developed and its API is considered unstable.
* HttpClient 4.0 is not fully binary compatible with 4.0 BETA1 release.
Some protected variables in connection management class have been made
final in order to help ensure their thread safety: 


Download -

Release notes -

HttpComponents site -

Please note HttpClient 4.0 currently provides only limited support for
NTLM authentication. For details please refer to

About Apache HttpClient

Although the java.net package provides basic functionality for accessing
resources via HTTP, it doesn't provide the full flexibility or
functionality needed by many applications. HttpClient seeks to fill this
void by providing an efficient, up-to-date, and feature-rich package
implementing the client side of the most recent HTTP standards and

Designed for extension while providing robust support for the base HTTP
protocol, HttpClient may be of interest to anyone building HTTP-aware
client applications such as web browsers, web service clients, or
systems that leverage or extend the HTTP protocol for distributed

View raw message