Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
It goes without saying that there is a staggering amount of data available on the Internet—specifically, available via the World Wide Web (HTTP). One of the wonderful things about the JDK is the built-in ability to access resources via HTTP—specifically, the java.net.HttpURLConnection class shows that simple HTTP resources can easily be downloaded by Java applications.
Unfortunately, the built-in HTTP connectivity in the JDK suffers from some significant limitations (for a partial feature set comparison, see http://www.nogoop.com/product_16.html#compare). Fortunately, these limitations are overcome when using the Commons HttpClient. A full list of features supported by HttpClient (including links to the relevant RFCs) can be found at http://jakarta.apache.org/commons/httpclient/features.html, but some of the most interesting features include: