0

I have an application which use webstart where the properties are passed on as . But since i upgraded my jre to update 45, its no longer working. It was working fine with update 40. I donot see anything in the revision history which might have broken this.

When i searched on http://docs.oracle.com/javase/7/docs/technotes/guides/javaws/developersguide/syntax.html, i can see that i might have to start the property name with "javaws." or "jnlp.". I have a large number of properties (~50). Is this the only way in which i can make it work? (If yes, its a bit strange that the revision history donot mention this). Is this is way in which properties are being handled in javaws?

Atul Soman
  • 4,612
  • 4
  • 30
  • 45
  • As mentioned in this answer, signing your JNLP file will pass the "insecure" properties to the application as well thereby avoiding the need for prefixing those properties with "jnlp" - http://stackoverflow.com/a/19405626/209008 – nhylated Oct 17 '13 at 17:15
  • 2
    possible duplicate of [with java update 7.45 the system properties no more set from jnlp tag "property"](http://stackoverflow.com/questions/19400725/with-java-update-7-45-the-system-properties-no-more-set-from-jnlp-tag-property) – Stephen C Oct 24 '13 at 16:56

2 Answers2

2

As suggested here you will either have to prefix the properties with jnlp or javaws, or you need to sign the jnlp (place an exact copy of your jnlp named APPLICATION.JNLP in the JNLP-INF directory of the jar that contains the main class, before signing the jar)

mth
  • 677
  • 1
  • 7
  • 19
0

Faced the same issue while upgrading our application from java 1.6 to 1.8 Solution is:

  1. add jnlp as a prefix to the property name passed in the jnlp template

    property name="dev.env" value="DEV" change to property name="jnlp.dev.env" value="DEV"

  2. Get system properties in the main method of the Main class passed in the jnlp template.
  3. If original property parameter in code was dev.env then just get the Jnlp properties and set it to the older one

String devProps= System.getProperty("jnlp.dev.env"); System.setProperty("dev.env",devProps);

Atul Rai
  • 171
  • 2
  • 4