Red Hat Bugzilla – Bug 455246
JNPL/WebStart not working on x86-64 with i586 package
Last modified: 2013-03-07 21:04:38 EST
Description of problem: Install latest java-1.5.0-sun on x86-64 there's also i586 plugin pkg involved which holds JNLP/WebStart (javaws binary). Run: some JNLP from firefox of in shell, you will get (JNLP from http://java.sun.com/products/javawebstart/demos.html) .qa.[root@x86-64-5s-1-m2 ~]# /usr/lib/jvm/java-1.5.0-sun-1.5.0.16/jre/javaws/javaws /tmp/draw.jnlp Java Web Start splash screen process exiting ..... Bad installation. No JRE found in configuration file: No such file or directory Version-Release number of selected component (if applicable): java-1.5.0-sun-plugin-1.5.0.16-1jpp.2.el5.i586 How reproducible: always
I wouldn't expect the i586 -plugin package stuff to work w/o having the i586 main package at the same time. I don't why we ship it for x86_64. Looks like a compose issue to me...
This is on RHEL-5-x86_64-java-sun-1.{5,6} only.
I have this too with Sun Java 1.6.0.17. Here's my list of installed Java packages: root@j /usr/lib/jvm/java-1.6.0-sun-1.6.0.17/jre/lib # rpm -qa java\* | sort java-1.4.2-gcj-compat-1.4.2.0-40jpp.115 java-1.4.2-gcj-compat-devel-1.4.2.0-40jpp.115 java-1.4.2-gcj-compat-devel-1.4.2.0-40jpp.115 java-1.4.2-gcj-compat-javadoc-1.4.2.0-40jpp.115 java-1.4.2-gcj-compat-src-1.4.2.0-40jpp.115 java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5 java-1.6.0-openjdk-devel-1.6.0.0-1.7.b09.el5 java-1.6.0-sun-1.6.0.17-1jpp.2.el5 java-1.6.0-sun-plugin-1.6.0.17-1jpp.2.el5 java-1.6.0-sun-plugin-1.6.0.17-1jpp.2.el5 The specific problem is that the operative .desktop file points at the i386 javaws binary, not the x86_64 binary: j /usr/share/applications $ cat java-1.6.0-sun-javaws.desktop [...] Exec=/usr/lib/jvm/java-1.6.0-sun-1.6.0.17/jre/bin/javaws [...] When I make a $HOME/.local/share/applications/java-1.6.0-sun-javaws.desktop with the Exec pointing to the x86_64 javaws binary, I can click on my Web Start link from Firefox and it starts properly.
java-1.5.0-sun is no longer a supported Red Hat Enterprise Linux package [1], and java-1.6.0-sun is now available as "fully multilib" [2], so if you *really* need to have the 32-bit -plugin subpackage, whose java-1.6.0-sun-javaws.desktop file points to the 32-bit binaries, it's possible to install the 32-bit main package and everything will work. However, it's probably better to have just the 64-bit java-1.6.0-sun and java-1.6.0-sun-plugin. Looking at comment 3, I see two -plugin subpackages and just one main package; both of them contain 'java-1.6.0-sun-javaws.desktop', but with a sightly different path in Exec=. RPM should be smart enough to silently leave only the file from the native-arch package on disk in this case, so it's surprising to hear that 'cat java-1.6.0-sun-javaws.desktop' gives you the path from the other package. Jared, could you please re-install the packages? And is 'rpm -V java-1.6.0-sun-plugin.x86_64' clean? [1] http://rhn.redhat.com/errata/RHSA-2010-0338.html [2] http://rhn.redhat.com/errata/RHBA-2010-0555.html
java-1.5.0-sun is no longer a supported
Radek, I no longer have the problem I had in Comment 3. Details follow. I just installed java-1.6.0-sun-plugin version 1.6.0.22-1jpp.1.el5 using yum. Here's the rpm -V output immediately after the install: root@down ~ # rpm -V java-1.6.0-sun-plugin.x86_64 root@down ~ # rpm -V java-1.6.0-sun-plugin.i586 S.5..... /usr/share/applications/java-1.6.0-sun-ControlPanel.desktop S.5..... /usr/share/applications/java-1.6.0-sun-javaws.desktop root@down ~ # The javaws desktop file says: root@down ~ # cat /usr/share/applications/java-1.6.0-sun-javaws.desktop [...] Exec=/usr/lib/jvm/java-1.6.0-sun-1.6.0.22.x86_64/jre/bin/javaws [...] And the executable pointed at is 64-bit: root@down ~ # file /usr/lib/jvm/java-1.6.0-sun-1.6.0.22.x86_64/jre/bin/javaws /usr/lib/jvm/java-1.6.0-sun-1.6.0.22.x86_64/jre/bin/javaws: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.4.0, dynamically linked (uses shared libs), for GNU/Linux 2.4.0, not stripped I tried clicking on a JNLP file from https://j3d-webstart.dev.java.net/test/ and the right javaws appears to have been started. (There was some HTTP proxy silliness, so the test app did not start, but that's unrelated.) So it appears that the problem I had with java-1.6.0-sun-1.6.0.17 has been fixed between then and now.
Cool, I'm glad to head that!
s/head/hear/ :)