See below the list of known implementations of NTLM protocol:
-
Jakarta (Apache) HTTP Client (free, Apache license) – Support for LM/NTLM (not NTLM V2) protocol on all Java platforms. Requires JRE 1.2 or higher. Not plug-compatible with the Java UrlConnection classes. No support for OEM encoding (as required by certain proxy servers). NTLM support was added quite a while ago and they don’t appear to be interested in extending it. Supports NTLM configuration levels 0-3 only.
-
Innovation HTTP Client w/Luigi Dragone NTLM support (free, LGPL) – Status of this is not clear; I had difficulty getting it to work reliably, and the software has not been released since 2002. It is not plug-compatible with the Java URLConnection classes. Probably supports only NTLM configuration levels 0-3 only.
-
JCIFS (free, LGPL) – Plug-compatible support for LM/NTLM (not NTLM V2) on all Java platforms. Not clear if OEM encoding is implemented. Supports NTLM configurations levels 0-3 only.
-
Oakland Software Java HTTP Client (not free) – Full plug-compatible support of LM/NTLM/NTLMv2 on all Java platforms JRE release 1.2 or higher. Supports both Unicode and OEM encoding. Supports all NTLM configuration levels.