I sure hope a moderator knows how to pass this along to the dev team (I don't), because I suspect that it is thought all is well and it isn't, not quite. Well, perhaps if the 1.6 JRE is installed with the production release, this won't happen, but if you started with 1.5 there is this problem . . . and the way the .rpm's install now, looks like there will *still* be a problem with Firefox and Konqueror.
The solution to getting Java graphical apps to run is to install 1.6. Azureus has been my test case, it crashed on 1.5. With installing 1.6 I also installed jedit, jrisk, and jgammon - all graphical. They all run (note that when run from the shell, they do throw some java errors - but that may not be related to the prev problem). The workaround previously was to export LIBXCB_ALLOW_SLOPPY_LOCK=1 (which I found not to work with 1.5 anyway). Now following the bouncing ball: /usr/lib/jvm/jre is now a symlink to /etc/alternatives/jre which is a symlnk to /usr/lib/jvm/jre-1.6.0.ui-sun which is a symlnk to /usr/lib/jvm/java-1.6.0.u1-sun.1.6.0.u1/jre which is what is installed by the 1.6 rpm. In this folder, in the bin folder, what is usually the vm executable "java" is now a script which performs the export (above) and then calls the vm with an executable I'm unfamiliar with, but the vm must either be java_vm or java.bin in that folder. A Java app follows the JRE environment variable along this chain and therefore resolves the problem. (There will be a quiz later). But . . .
The Firefox 1.6 plugin still does not work. (Installing the plugin requires deleting 1.5, which will give an error; overrule it.) From a location I cannot find (and I looked a long time), Firefox is pointed to /usr/lib/browser-plugins. The 1.5 plugin in that folder is named javaplugin.so which is a symlink to /etc/alternatives/javaplugin which is (here we go again) a symlink to /usr/lib/classpath/libgcwebplugin.so. Problem is, that is not what the 1.6 plugin rpm installs. The 1.6 plugin is /usr/lib/jvm/java-1.6.0.u1-sun-1.6.0.u1/jre/plugin/i386/ns7/libjavaplugin_oji.so. What should be done is to replace the /usr/lib/browser-plugins/javaplugin.so symlink to /usr/lib/classpath/libgcwebplugin.so with a symlink to libjavaplugin_oji.so. Java then works in Firefox. Note: The libgcwebplugin apparently has a security provision; when you ask to run an applet it pops up to ask if it is "trusted" and if you want it "white-listed." This functionality does not appear to be in the 1.6 libjavaplugin_oji.
Finally, I can't get this working with Konqueror. Konq doesn't use a plugin; it calls the JRE directly. But as stated above, the "java" vm executable is now a script. Konq apparently does not run that script the way a Java apps does. Substituting "java_vm" or "java.bin" does not work either. So I'm stumped on how to get Konq to call the vm.
At least I got Firefox working with Java. The production release may install 1.6, but the way the .rpm's work now, Konq is not given the path it needs to execute the vm and the plugin is not properly linked to Firefox.
EDIT: Filed a novell bugzilla report: #327533.
|