OpenJDK java web start fails to open jnlp files version 1.5

Bug #224800 reported by Mossroy on 2008-04-30
64
This bug affects 7 people
Affects Status Importance Assigned to Milestone
OpenJDK
Fix Released
Medium
openjdk-6 (Debian)
Fix Released
Unknown
openjdk-6 (Fedora)
New
Undecided
Unassigned
openjdk-6 (Ubuntu)
Undecided
Unassigned

Bug Description

When OpenJDK java web start is used, it can not open some jnlp files.
For example, you can try the following ones :
http://www.spark-angels.com/telecharger-1/
http://sweethome3d.sourceforge.net/SweetHome3D.jnlp

If you open them through firefox, it downloads the necessary jars, but does not open the application.
If you download the jnlp files and launch them whith javaws, you get the following error :
netx: Spec version not supported (supports 1.0)

These application work if you launch them with Sun Java 6 Web start.

Netx seems to be the library used by openjdk to handle jnlp files. I checked the source code and it only supports 1.0 version of jnlp (see file Parser.java in package netx.jnlp). The examples above use version 1.5 of jnlp.

What is annoying is that the upgrade from gutsy to hardy makes openjdk the default java alternative, even if Sun java 6 was installed.
Thus, the jnlp files that were working under gusty do not work anymore under hardy.

The workaround I currently use is to choose another location when firefox prompts me which application to use for jnlp files : I specify /usr/lib/jvm/java-6-sun/bin/javaws instead of "OpenJDK Java Web Start". So the jnlp files are opened with Sun Java instead of openjdk : I still need to keep Sun java.

The solution would be, I guess, to make netx support 1.5 jnlp files. But this project doesn't seem to be updated for years...

Version of Ubuntu : hardy
Version of openjdk : 6b09-0ubuntu2
Version of netx : 0.5

Olivier Mengué (dolmen) wrote :

I confirm for the second URL (sweerhome3d). Same versions of the packages, same result ("netx: Spec version not supported (supports 1.0)").

By the way, Java Web Start does not work even on sun-java6-jre as javaws is missing on amd64 (see bug #202389 ).

However, the error is not the same for spark-angels. Maybe they have downgraded their JNLP file.

Changed in openjdk-6:
status: New → Confirmed
Changed in openjdk-6:
status: Unknown → New
Craig (candrews-integralblue) wrote :

using openjdk 1.6.0_0-b12 amd64 on Intrepid, I get this result:

$ javaws http://sweethome3d.sourceforge.net/SweetHome3D.jnlp
netx: Invalid XML document syntax.

Roman Polach (rpolach) wrote :

I got the same error on 32bit Hardy (with latest updates)
for SweetHome3D.jnlp:
netx: Invalid XML document syntax.

Confirmed with 64bits ArchLinux.

$ javaws SweetHome3D.jnlp
netx: Invalid XML document syntax.

When OpenJDK java web start is used, it can not open some jnlp files.
For example, you can try the following ones :
http://www.spark-angels.com/telecharger-1/
http://sweethome3d.sourceforge.net/SweetHome3D.jnlp

If you open them through firefox, it downloads the necessary jars, but does not open the application.
If you download the jnlp files and launch them whith javaws, you get the following error :
netx: Spec version not supported (supports 1.0)

These application work if you launch them with Sun Java 6 Web start.

Netx seems to be the library used by openjdk to handle jnlp files. I checked the source code and it only supports 1.0 version of jnlp (see file Parser.java in package netx.jnlp). The examples above use version 1.5 of jnlp.

What is annoying is that the upgrade from gutsy to hardy makes openjdk the default java alternative, even if Sun java 6 was installed.
Thus, the jnlp files that were working under gusty do not work anymore under hardy.

The workaround I currently use is to choose another location when firefox prompts me which application to use for jnlp files : I specify /usr/lib/jvm/java-6-sun/bin/javaws instead of "OpenJDK Java Web Start". So the jnlp files are opened with Sun Java instead of openjdk : I still need to keep Sun java.

The solution would be, I guess, to make netx support 1.5 jnlp files. But this project doesn't seem to be updated for years...

Changed in openjdk:
status: Unknown → Confirmed
morningboat (morningboat) wrote :

Got the same error on 64bit system for CrossFTP:
$javaws http://www.crossftp.com/crossftp.jnlp

Mossroy (mossroy) wrote :

Apparently, somebody opened this issue in the IcedTea bugtracker : http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=216

Ivan Lyanguzov (tzong) wrote :

Probably, that is another bug, but also cannot start:
$ javaws http://ganttproject.googlecode.com/svn/webstart/ganttoject-2.0.9/ganttproject-2.0.9.jnlp
netx: No base directory (contains cache and other data)

Using current icedtea/openjdk shipped with Fedora 11 x86-64, I now get different error:

netx: No base directory (contains cache and other data)

Support for JNLP 1.5 and 6.0 has been recently added to IcedTea6 hg [1]

[1] http://icedtea.classpath.org/hg/icedtea6/rev/1ba29bfca5a0

(In reply to comment #1)
> Using current icedtea/openjdk shipped with Fedora 11 x86-64, I now get
> different error:
>
> netx: No base directory (contains cache and other data)
>
That's a known bug that has been fixed in IcedTea6 hg tip. Please see https://bugzilla.redhat.com/show_bug.cgi?id=507870 for more information.

Great. I am now able to run the SweetHome3D jnlp, but not the spark-angels example provided in the original report. Here is the result when run from a terminal:

net.sourceforge.jnlp.LaunchException: Fatal: Launch Error: Could not launch JNLP file.
 at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:446)
 at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:674)
Caused by: java.lang.reflect.InvocationTargetException
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:616)
 at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:438)
 ... 1 more
Caused by: java.lang.NoClassDefFoundError: sparkangels/vb
 at com.sparkom.launcher.Main.main(Unknown Source)
 ... 6 more
Caused by:
java.lang.reflect.InvocationTargetException
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:616)
 at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:438)
 at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:674)
Caused by: java.lang.NoClassDefFoundError: sparkangels/vb
 at com.sparkom.launcher.Main.main(Unknown Source)
 ... 6 more

However, this does launch without barfing using Sun's proprietary javaws.

(In reply to comment #4)
> Caused by: java.lang.NoClassDefFoundError: sparkangels/vb
> at com.sparkom.launcher.Main.main(Unknown Source)
> ... 6 more
This is a bug in Netx's classloader and isnt related to JNLP 1.5 support. If there are no other issues, I will close this bug as FIXED.

Cheers,
Omair

No other issues here.

Closing bug as FIXED. Please file any specific issues as separate bugs.

Changed in openjdk:
status: Confirmed → Fix Released
S. D. (akjag) wrote :

Any idea when the fix (in openjdk 6b16) is going to get rolled into jaunty? It's in Karmic now, but...

Marco Ciampa (ciampix) wrote :

To the #7 the workaround is:

echo "basedir=.netxrc">.netxrc

see: https://bugzilla.redhat.com/show_bug.cgi?id=507870

aexl (aexl) wrote :

same problem here with jaunty:

javaws http://kernowforsaxon.sourceforge.net/jws/Kernow.jnlp
netx: Spec version not supported (supports 1.0)

subscribing.

Matthias Klose (doko) wrote :

fixed in karmic

Changed in openjdk-6 (Ubuntu):
status: Confirmed → Fix Released
Changed in openjdk-6 (Debian):
status: New → Fix Released

I confirm openjdk webstart iis working on Karmic (beta), however Sun webstart is not. Has anyone got the same problem?

Openjdk works well in karmic indeed but Sun Java webstart gives me this:
~$ javaws http://sweethome3d.sourceforge.net/SweetHome3D.jnlp
net.sourceforge.jnlp.LaunchException: Fatal: Launch Error: Could not launch JNLP file.
 at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:447)
 at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:714)
Caused by: java.lang.NullPointerException
 at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:427)
 ... 1 more
Caused by:
java.lang.NullPointerException
 at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:427)
 at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:714)

Has anyone the same problem?

Sam Freilich (l33tminion) wrote :

Just helped someone with this bug in Jaunty by having them install sun-java6-jre and run update-alternatives.

Barry Carroll (barry-carroll) wrote :

Confirmed this bug on Release 10.04 (lucid) trying to run jviewer.jnlp.

When is this bug likely to be fixed??

Roman Polach (rpolach) wrote :

It works for me in 10.04, at least for http://sweethome3d.sourceforge.net/SweetHome3D.jnlp

Mossroy (mossroy) wrote :

I also works for me, on 10.04 64 bits. I tested all the jnlp applications listed above : sweethome3d, spark angels, Kernow, Ganttproject, and crossftp

Changed in openjdk:
importance: Unknown → Medium
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Related questions

Remote bug watches

Bug watches keep track of this bug in other bug trackers.