Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 147198 - handling javaws/nsplugin for sun-jdk-1.5 on amd64
Summary: handling javaws/nsplugin for sun-jdk-1.5 on amd64
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High major (vote)
Assignee: Java team
URL:
Whiteboard:
Keywords:
: 101195 122516 (view as bug list)
Depends on:
Blocks:
 
Reported: 2006-09-11 08:40 UTC by Chris Smith
Modified: 2009-05-23 21:46 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Smith 2006-09-11 08:40:42 UTC
using:
dev-java/java-config-1.3.6
dev-java/java-config-2.0.28
dev-java/java-config-wrapper-0.12

If I set the user VM to Sun, javaws will not run.
One system provides this info:
==========================================
sartre ~ $ javaws
Tried to execute /usr/lib/jvm/sun-jdk-1.5/bin/javaws and /usr/lib/jvm/sun-jdk-1.5/jre/bin/javaws, but neither exist.
Perhaps there is something wrong with the install of sun-jdk-1.5?
==========================================
Another provides this:
==========================================
sugarkane ~ $ javaws
Java Web Start splash screen process exiting ...
Bad installation: JAVAWS_HOME not set: No such file or directory
==========================================

If I set the user VM to Blackdown (which I don't want), the Sun javaws will execute instead.

The environment variable JAVAWS_HOME does not get set (exporting it does not seem to help) and there is no javaws in /etc/java-config-2/current-system-vm/bin.

Chris
Comment 1 Josh Nichols (RETIRED) gentoo-dev 2006-09-11 08:45:38 UTC
If you're on amd64, javaws actually isn't available.
Comment 2 Chris Smith 2006-09-11 09:22:01 UTC
The first system listed below is x86-64, the second, however, is x86 (32 bit). 

Oddly enough I can manually run "/opt/java32/javaws/javaws" in the 64 bit system, just plain "javaws" doesn't work and neither can a web page start it.

However on the 32 bit system even directly attempting to start the javaws script at "/opt/sun-jre-bin-1.5.0.08/javaws/javaws" does not work and provides the error as originally given.

It looks like the javaws script sets the JAVAWS_HOME env variable and then calls javawsbin which is missing in the 32 bit install.

Chris
Comment 3 Josh Nichols (RETIRED) gentoo-dev 2006-09-11 11:13:40 UTC
Ok, so we're starting to diverge about about what the issue is.

First, javaws isn't available on amd64 for sun-jdk-1.5.

Second, javaws is available through the emul package, but it hasn't been updated to be recognized by java-config.

Third, there was some problem issue with javaws on 32bit sun-jdk-1.5.

Ideally, there should be one issue per bug.
Comment 4 Chris Smith 2006-09-11 11:47:36 UTC
(In reply to comment #3)
> First, javaws isn't available on amd64 for sun-jdk-1.5.

As I stated, with dev-java/sun-jdk-1.5.0.08 emerged, javaws does exist on my system (amd64), it just doesn't work properly unless I call it directly or set the user VM to Blackdown (then I get Blackdown java but Sun javaws).
 
> Second, javaws is available through the emul package, but it hasn't been
> updated to be recognized by java-config.

That may be the case as the path is "/opt/java32/javaws/javaws", but I just installed dev-java/sun-jdk-1.5.0.08 as mentioned above.

> Third, there was some problem issue with javaws on 32bit sun-jdk-1.5.

It seems that the missing javawsbin might be it.

> Ideally, there should be one issue per bug.

Agreed, I just don't know where all of the bugs are. If you want to narrow this one down to the java-config issue on amd64 systems I can open another one for the missing javawsbin for 32 bit for x86 systems.

Chris
Comment 5 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2006-09-11 11:56:48 UTC
(In reply to comment #3)
> Ok, so we're starting to diverge about about what the issue is.
> 
> First, javaws isn't available on amd64 for sun-jdk-1.5.

That would probably be dupe of bug 122516.

> Second, javaws is available through the emul package, but it hasn't been
> updated to be recognized by java-config.

Can't help with amd64 issues yet :)
 
> Third, there was some problem issue with javaws on 32bit sun-jdk-1.5.

No issues with javaws on sun-jre-bin neither sun-jdk on x86. Be it run by java-config's wrapper nor directly.
Comment 6 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2006-09-11 11:57:45 UTC
Touched wrong radio button, sorry for the spam.
Comment 7 Chris Smith 2006-09-11 12:49:37 UTC
(In reply to comment #5)
> That would probably be dupe of bug 122516.

If I replace /opt/sun-jdk-1.5.0.08/bin/javaws twith a symlink to /opt/java32/javaws/javaws then javaws with Sun as the default VM works fine.
 
> > Second, javaws is available through the emul package, but it hasn't been
> > updated to be recognized by java-config.
> 
> Can't help with amd64 issues yet :)

See above, I believe that javaws support is being emulated. It appears that the javaws script is the same, whether 32 or 64 bit, but it doesn't work if called from 64 bit directory.

> > Third, there was some problem issue with javaws on 32bit sun-jdk-1.5.
> 
> No issues with javaws on sun-jre-bin neither sun-jdk on x86. Be it run by
> java-config's wrapper nor directly.

What do you mean no issues? No issues, as in bug reports filed? As I've just attempted to remerge both Sun's jdk and jre on the 32 bit system and in both cases javawsbin is missing so it can't possibly run.

Chris
Comment 8 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2006-09-11 22:44:22 UTC
I tried javaws from blackdown, it really has sun logo and stuff (I think it's just licensed from sun), but About window shows it's blackdown.
Note that sometimes you can really get different implementation than the one you run, thanks to settings in ~/.java/deployment/deployment.properties (managed to start sun-jdk-1.5 javaws using sun-jdk-1.6 engine).

(In reply to comment #7)
> > No issues with javaws on sun-jre-bin neither sun-jdk on x86. Be it run by
> > java-config's wrapper nor directly.
> 
> What do you mean no issues? No issues, as in bug reports filed? As I've just
> attempted to remerge both Sun's jdk and jre on the 32 bit system and in both
> cases javawsbin is missing so it can't possibly run.
> 

OK so this would be a good candidate for separate bug. I meant that I had no issues, sorry. It's true that there is no javawsbin for 1.5 (there are for 1.4) but they work here. These are the executables I have:

/opt/sun-jre-bin-1.5.0.08/bin/javaws
/opt/sun-jdk-1.5.0.08/bin/javaws
/opt/sun-jdk-1.5.0.08/jre/bin/javaws

Try to remove that ~/.java/deployment/deployment.properties before you run it, to be sure.
Comment 9 Chris Smith 2006-09-12 07:35:53 UTC
(In reply to comment #8)
> I tried javaws from blackdown, it really has sun logo and stuff

Yes, I discovered that. I originally thought that I was running Sun's javaws.

> > cases javawsbin is missing so it can't possibly run.
> 
> OK so this would be a good candidate for separate bug. I meant that I had no
> issues, sorry. It's true that there is no javawsbin for 1.5 (there are for 1.4)

Discovered this as well in the meantime. In previous versions (as well as the Blackdown 1.4) javaws was a simple script that set JAVAWS_HOME and called javawsbin. Now it appears to be an executable itself and there is no javaws.

I'm working with the 32 bit system only through ssh at this point. I'll need to really get on to the desktop to nake sure the problem is not related.

As for the amd64 problem, Sun states right on their download page to use the 32 bit version for javaws and for applets. And it does work. In fact with the Blackdown 1.4 javaws I'm succesful adding and using the 64 bit Sun engine as the selected jre, with Sun's 32 bit javaws I cannot succesfully do this and must use their 32 bit jre for javaws, but the interface isn't as advanced.

Thanks.

Chris
Comment 10 Chris Smith 2006-09-12 08:09:16 UTC
" and there is no javaws." Should be " and there is no javawsbin."
Comment 11 Josh Nichols (RETIRED) gentoo-dev 2006-09-12 08:20:14 UTC
(In reply to comment #9)
> As for the amd64 problem, Sun states right on their download page to use the 32
> bit version for javaws and for applets.

Could you please share the URL where they say this?
Comment 12 Chris Smith 2006-09-12 08:34:19 UTC
http://java.sun.com/javase/downloads/index.jsp

click on download the jdk or jre
Comment 13 Josh Nichols (RETIRED) gentoo-dev 2006-09-14 12:29:07 UTC
What we could do is add multlilib use flag, and on amd64 with multilib, it should depend on a 32bit 1.5 JRE, and then make the appropriate symlinks. That should do the trick.

One problem, though, would be that the nsplugin would only work with -bin browsers, ie firefox-bin.
Comment 14 Chris Smith 2006-09-14 12:53:41 UTC
The 64 bit jre works fine with the 64 bit browsers, no need to change that.
It's only the javaws that needs fixing. I suggest the workaround in comment #7: "replace /opt/sun-jdk-1.5.0.08/bin/javaws with a symlink to
/opt/java32/javaws/javaws".
Then javaws (although it is blackdowns) is usable (as 32 bit), and with manual addition by the user it can even call Sun's 64 bit jre.
This should fix bug #122516 as well.

Chris
Comment 15 Josh Nichols (RETIRED) gentoo-dev 2006-09-18 21:28:17 UTC
So, the solution we will likely go with is as follows:

Add multilib USE flag.

When enabled, this will depend on =app-emulation/emul-linux-x86-java-1.5*.

During the merge, a symlink will be made from /opt/emul-linux-x86-java-x.y.z/bin/javaws to /opt/sun-jdk-x.y.z/bin/javaws

(note: emul-linux-x86-java-1.5 is the 32 bit version of sun-jre-bin)
Comment 16 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2006-12-19 00:37:14 UTC
*** Bug 101195 has been marked as a duplicate of this bug. ***
Comment 17 Jakob Schiotz 2007-02-14 15:58:39 UTC
(In reply to comment #15)

I can confirm that doing this manually works.  It would be nice if this is actually done, so javaws starts working on amd64.

Comment 18 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2007-04-21 16:17:23 UTC
*** Bug 122516 has been marked as a duplicate of this bug. ***
Comment 19 Alistair Bush (RETIRED) gentoo-dev 2009-05-23 21:46:24 UTC
How does that saying go,  "Wait long enough and all problems fall into insignificance"

Time has come and gone and we now have javaws support on amd64.

$ java-config -L
The following VMs are available for generation-2:
1)      Sun 32bit JRE 1.6.0.13 [emul-linux-x86-java-1.6]
2)      IBM JDK 1.5.0.8a [ibm-jdk-bin-1.5]
3)      IBM JDK 1.6.0.4 [ibm-jdk-bin-1.6]
4)      OpenJDK6/IcedTea6 1.4.1 [icedtea6]
5)      IcedTea6-bin 1.4.1 [icedtea6-bin]
6)      JamVM 1.5.1 [jamvm]
7)      Sun JDK 1.5.0.18 [sun-jdk-1.5]
*)      Sun JDK 1.6.0.14_beta6 [sun-jdk-1.6]
9)      Sun JDK 1.7.0.0_alpha59 [sun-jdk-1.7]
10)     Sun JRE 1.6.0.13 [sun-jre-bin-1.6]


$ javaws
Java(TM) Web Start 1.6.0_14-ea
Usage:  javaws [run-options] <jnlp-file>
        javaws [control-options]

where run-options include:
  -verbose              display additional output
  -offline              run the application in offline mode
  -system               run the application from the system cache only
  -Xnosplash            run without showing a splash screen
  -J<option>            supply option to the vm
  -wait                 start java process and wait for its exit

control-options include:
  -viewer               show the cache viewer in the java control panel
  -uninstall            remove all applications from the cache
  -uninstall <jnlp-file>                remove the application from the cache
  -import [import-options] <jnlp-file>  import the application to the cache

import-options include:
  -silent               import silently (with no user interface)
  -system               import application into the system cache
  -codebase <url>       retrieve resources from the given codebase
  -shortcut             install shortcuts as if user allowed prompt
  -association          install associations as if user allowed prompt