SSL mit Commons-HttpClient
Beim Absetzen einer HTTPS-Abfrage mit der HttpClient-Bibliothek aus der Jakarta Commons-Reihe tritt die folgende Exception auf:
Exception in thread "main" java.lang.NoClassDefFoundError at javax.crypto.Cipher.getInstance(DashoA12275) at com.sun.net.ssl.internal.ssl.JsseJce.getCipher(Unknown Source) ... und so weiter ...
Huch denkt sich einer... alle kryptografischen Komponenten werden doch seit JRE 1.4.2 gleich mit ausgeliefert. Ey Mann, wo ist mein Cipher?
Securit-ey und Polic-ey
Durch Export-Beschränkungen auf starke kryptografische Software können die benötigten Algorithmen zwar mitgeliefert werden, sind aber standardmäßig ausgeschaltet. Um diese innerhalb des JRE zu reaktivieren müssen die "Unlimited Strength Jurisdiction Policy Files" installiert werden. Diese finden sich bei Sun ganz unten auf der Seite unter "Other Downloads". Die Zip-Datei muss in das Verzeichnis "lib/security" der virtuellen Maschine entpackt werden. Danach ist auch die "starke" Verschlüsselung wieder einsatzbereit.
Tags: Java ,SSL ,Troubleshooting