We have an application that executes from a JNLP file that we are told is version sensitive. We have a rule set created for a number of apps that work just fine to meet this goal. However, when creating a rule to execute this JNLP application we are having issues getting it to work. To simplify the process we created a certificate hash rule for this application and when reviewing console\trace we can see it correctly identifying and executing under the Java 6U29 environment. The issue is that even though 6u29 is being invoked it does not work (merely displays a "application error" message). However, if I instead launch the JNLP file using the Javaws.exe in the 1.6.0_29 folder the app loads fine. When comparing behavior with the rule set environment and a 6u29 only environment I saw some peculiar entries.
basic: jvmParams: [JVMParameters: isSecure: false, args: "-Xmx256m" "-Xms32m" "-DEAS_HOME=http://appserver:10080/easconsole/" "-DEPM_ORACLE_INSTANCE=http://appserver:10080/easconsole/" "-DUSE_FOXTROT_BY_DEFAULT=NO" "-DDEFAULT_COMMAND_MANAGER=com.essbase.eas.framework.client.defs.command.UICommandManager" "-Deas_country=US" "-Deas_language=EN" "-DEAS_CONSOLE_LOG=LOG_NULL" "-Djava.util.logging.config.class=oracle.core.ojdl.logging.LoggingConfiguration" "-DmaxFileSize=1000000" "-DmaxLogSize=5000000" "-Dformat=ODL-Text" "-DEAS_LOG_FORMAT=ODL-Text" "-Dsun.awt.keepWorkingSetOnMinimize=true" "-Dswing.defaultlaf=oracle.bali.ewt.olaf2.OracleLookAndFeel" "-Dswing.metalTheme=OracleBlueTheme"]
basic: cmd 0 : C:\Program Files\Java\jre1.6.0_29\bin\javaw.exe
basic: cmd 1 : -Dsun.awt.keepWorkingSetOnMinimize=true
basic: cmd 2 : -Dswing.metalTheme=OracleBlueTheme
basic: cmd 3 : -Xmx256m
basic: cmd 4 : -Xms32m
Xbootclasspath/a:C:\Program Files\Java\jre1.8.0_25\lib\javaws.jar;C:\Program Files\Java\jre1.8.0_25\lib\deploy.jar;C:\Program Files\Java\jre1.8.0_25\lib\plugin.jar
basic: cmd 6 : -classpath
basic: cmd 7 : C:\Program Files\Java\jre1.8.0_25\lib\deploy.jar
basic: cmd 8 : -Djnlpx.vmargs=LURzdW4uYXd0LmtlZXBXb3JraW5nU2V0T25NaW5pbWl6ZT10cnVlAC1Ec3dpbmcubWV0YWxUaGVtZT1PcmFjbGVCbHVlVGhlbWUALVhteDI1Nm0ALVhtczMybQA=
basic: cmd 9 : -Djnlpx.jvm=C:\Program Files\Java\jre1.6.0_29\bin\javaw.exe
basic: cmd 10 : -Djnlpx.splashport=50425
basic: cmd 11 : -Djnlpx.home=C:\Program Files\Java\jre1.8.0_25\bin
basic: cmd 12 : -Djnlpx.remove=false
basic: cmd 13 : -Djnlpx.offline=false
basic: cmd 14 : -Djnlpx.relaunch=true
basic: cmd 15 : -Djnlpx.session.data=C:\Users\Username\AppData\Local\Temp\session7225377494424974596
basic: cmd 16 : -Djnlpx.heapsize=33554432,268435456
basic: cmd 17 : -Djava.security.policy=file:C:\Program Files\Java\jre1.8.0_25\lib\security\javaws.policy
basic: cmd 18 : -DtrustProxy=true
basic: cmd 19 : -Xverify:remote
basic: cmd 20 : -Dsun.awt.warmup=true
basic: cmd 21 : -Djava.security.manager
basic: cmd 22 : com.sun.javaws.Main
basic: cmd 23 : C:\Users\Username\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\2\56c68c82-305f8577
network: Created version ID: 1.7
basic: Exiting
So it appears that the 6u29 version of Javaws.exe is getting called however some of the configured paths are being set to the 8u25 path. Not sure if its a cause but does seem to be relevant since on the exact same system if I run the JNLP specifically with the 6u29 exe it works as expected. Any assistance would be appreciated.