[kaffe] issue with https, kaffe 1.1.3, and jessie 0.9.6
Mark Maxham
mark@maxham.com
Wed Feb 4 16:10:02 2004
I have a very simple little program:
I'm running kaffe 1.1.3 on Debian, and I have built the GNU Crypto from
the latest CVS, as well as Jessie, also from the latest CVS. Here's my
little test app:
-----
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
import java.security.Security;
/**
* @author max
*
*/
public class HttpsTest
{
public static void main(String[] args) throws Exception
{
System.setProperty(
"java.protocol.handler.pkgs",
"org.metastatic.jessie");
Security.addProvider(new gnu.crypto.jce.GnuCrypto());
Security.addProvider(new org.metastatic.jessie.provider.Jessie());
URL url = new URL("https://www.foo.com");
URLConnection uc = url.openConnection();
InputStream is = uc.getInputStream();
is.close();
}
}
-----
Here's my invocation:
java -classpath .:/data/workdir/source/gnu-crypto.jar:
/data/workdir/jce/javax-crypto.jar:
/data/workdir/security/javax-security.jar:
/data/jessie-0.9.6/lib/javax-net.jar:
/data/jessie-0.9.6/lib/javax-security-cert.jar:
/data/jessie-0.9.6/lib/org-metastatic-jessie.jar HttpsTest
I looked in the jessie.jar file and everything looks like it's there to
provide HTTPS, and I get this:
java.net.MalformedURLException: Protocol handler not found: https
at java.net.URL.<init> (URL.java:430)
at java.net.URL.<init> (URL.java:311)
at HttpsTest.main (HttpsTest.java:17)
I tried moving the jessie.jar into the BOOTCLASSPATH and got a whole new
raft of exceptions, because jessie wants to load some classes by name.
But to do so, it has to call [some object].class.getClassLoader(). But
if the calling class was loaded by the bootloader, getClassLoader()
returns null. Argh! It's like I'm stuck in a catch-22 here.
Has anybody else made https work with jessie under kaffe? If so, what's
the trick?
thanks
max