Request for help: OpenJDK6 IcedTea Java plugin

Beat Gaetzi beat at FreeBSD.org
Thu Sep 9 19:24:04 UTC 2010


On 09.09.2010 21:00, Jung-uk Kim wrote:
> On Thursday 09 September 2010 12:40 pm, Beat Gaetzi wrote:
>> Hi,
>>
>> Due to a lot of user request I've started working on a port for the
>> OpenJDK6 IcedTea Java plugin which works with Firefox 3.6. As I
>> never used the Java plugin and I'm not very experienced in the Java
>> world I need some help.
>>
>> Some parts of the port are taken from java/openjdk6 and pkgsrc. The
>> shar file of the current port is available here:
>> http://people.freebsd.org/~beat/patches/icedtea6-plugin.shar
>>
>> I've tested the port on FreeBSD 8.1 amd64 and i386. The plugin was
>> recognized after creating a symlink in ~/.mozilla/plugins/:
>> # ln -s /usr/local/lib/netscape/plugins/IcedTeaPlugin.so
>> ~/.mozilla/plugins/
>>
>> Screenshot of about:plugins in Firefox 3.6:
>> http://tmp.chruetertee.ch/firefox-icedtea.png
>>
>> When I tried to watch a Java applet the browser crashed:
>>
>> Exception in thread "main" java.lang.IllegalAccessError: tried to
>> access class sun.applet.AppletMessageHandler from class
>> sun.applet.PluginAppletViewer
>>         at
>> sun.applet.PluginAppletViewer.<clinit>(PluginAppletViewer.java:2163
>> ) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>> Method)
>>         at
>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstru
>> ctorAccessorImpl.java:57) at
>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Delegatin
>> gConstructorAccessorImpl.java:45) at
>> java.lang.reflect.Constructor.newInstance(Constructor.java:532) at
>> java.lang.Class.newInstance0(Class.java:372)
>>         at java.lang.Class.newInstance(Class.java:325)
>>         at
>> sun.applet.PluginStreamHandler.<init>(PluginStreamHandler.java:85)
>>         at sun.applet.PluginMain.connect(PluginMain.java:155)
>>         at sun.applet.PluginMain.<init>(PluginMain.java:137)
>>         at sun.applet.PluginMain.main(PluginMain.java:116)
>>
>> So I copied the content of
>> www/icedtea6-plugin/work/icedtea6-1.8/liveconnect to
>> /usr/local/lib/netscape/plugins/ (This step isn't done by the port
>> yet as I don't know if this is the correct location) set the
>> CLASSPATH environment variable but it crashed again:
>>
>> # mv /usr/ports/www/icedtea6-plugin/work/icedtea6-1.8/liveconnect/*
>> /usr/local/lib/netscape/plugins/
>> # setenv CLASSPATH /usr/local/lib/netscape/plugins/
>> # firefox3
>> openjdk version "1.6.0"
>> OpenJDK Runtime Environment (build 1.6.0-b20)
>> OpenJDK Client VM (build 17.0-b16, mixed mode)
>> Exception in thread "main" java.lang.IllegalAccessError: tried to
>> access class sun.applet.AppletMessageHandler from class
>> sun.applet.PluginAppletViewer
>>         at
>> sun.applet.PluginAppletViewer.<clinit>(PluginAppletViewer.java:2163
>> ) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>> Method)
>>         at
>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstru
>> ctorAccessorImpl.java:57) at
>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Delegatin
>> gConstructorAccessorImpl.java:45) at
>> java.lang.reflect.Constructor.newInstance(Constructor.java:532) at
>> java.lang.Class.newInstance0(Class.java:372)
>>         at java.lang.Class.newInstance(Class.java:325)
>>         at
>> sun.applet.PluginStreamHandler.<init>(PluginStreamHandler.java:85)
>>         at sun.applet.PluginMain.connect(PluginMain.java:155)
>>         at sun.applet.PluginMain.<init>(PluginMain.java:137)
>>         at sun.applet.PluginMain.main(PluginMain.java:116)
>>
>> Does anyone knows how to fix this problem?
>>
>> There are also some parts (marked with a comment) in the port
>> makefile which needs some review or improvement.
> 
> Wow, I was working on it, too.  And I was going to announce it today 
> when I am done cleaning up the ports. :-) You can see some 
> screenshots of mine from here:
> 
> http://people.freebsd.org/~jkim/icedtea/screenshots/

These screenshots looks much better then my exception :)

> FYI, you have to apply few patches from IcedTea6 distribution, i.e., 
> patches/extensions/*.patch.  Specifically, you have to patch Java 
> Runtime to make NetX working with OpenJDK6.  Please see netx.patch.

I will take a look at this patch and I'm glad to test your port soon.
Thanks for working on this!

Beat


More information about the freebsd-gecko mailing list