views:

48

answers:

1

I have a Java WebStart application for which I want to specify that the client use JRE 1.6.0_17 or later.

To the JNLP file I've tried adding:

<j2se version="1.6.0_17+"/> 

or

<j2se version="1.6.0_17"/> 

But when downloading JNLP file I'm given the message:

"The application has requested a version of the JRE(version 1.6.0_17) that is not installed"

despite the fact that:

  • "java -version" reports the version number on the machine as "1.6.0_17"
  • Changing the jnlp file to use and calling "System.getProperty("java.version")" reports the version that it is actually using to be "1.6.0_17"

Looking through the spec section 4.6.1 indicates that there is some difference between platform version and product version, but it isn't clear to me how I would go about using the product version (or even if I should).

Any help or pointers would be appreciated.

+2  A: 

When you specify an exact product version, you have to specify the href attribute too. Otherwise you can only specify the platform version (i.e. 1.5, 1.6).

Using the following should work:

<j2se version="1.6.0_17" href="http://java.sun.com/products/autodl/j2se"/&gt;
momania
This answer is certainly helpful, although it only allows me to specify the _u version for products that can be downloaded from that site. This seems to run into a brick wall when combined with OSX or some flavours of *nix where there is no equivalent product site ( at least that I've been able to determine ).Thanks for the help.
Rob Lally