New interface java.net.DatagramSocketImplFactory is used by DatagramSocket to create actual socket implementations. This addition makes DatagramSocket consistent with the other socket types, by allowing the user to set the DatagramSocketImplFactory through a public API.
The following constants were added to java.net.HttpURLConnection to make the HTTP status codes match the HTTP 1.1 RFC:
Two new methods were added to support following HTTP redirects (requests with response code 3xx) on a per-instance basis. The default is to use the class setting.
Two new methods have been added to java.net.Socket. Java sockets now support the keepalive option.
Several access methods have been added to make java.net.URL consistent with the fields of a URL as described in the latest IETF specification, RFC2396.
An overloaded getContent() method was added to java.net.URL, java.net.URLConnection, and java.net.ContentHandler to allow requesting that the returned content object support one of an ordered list of Java types. This allows mapping of MIME types to more than one possible Java type, and improves system flexibility.
The method java.net.URLDecoder.decode(String) no longer throws an exception.
Several new methods have been added to java.net.URLStreamHandler.
These additions expose the concept of a handler's default port number and allow URL handlers to override aspects of URL equality and hashcode comparisons in URL protocol-specific ways. These changes enable cleaner access to the parsed component parts of a URL and enhance the ability of the various URL handlers to share common parsing code.
There is a new open mode for java.util.zip.ZipFile and java.util.jar.JarFile, which automatically deletes temporary (cached) files associated with each JarURLConnection when the Zip/Jar file opened in this mode is closed and the process exits. This is useful when downloading temporary jar files onto a local disk.