In Java 8 Update 121 they implemented a bugfix, which causes the security dialog to handle jnlp files from a unknown location differently. As far as I understand this fix, the location of a jnlp file will now be determined via a hash of the file. My problem is, that I have some dynamic content in my remote jnlp file. So the hash is different with each call and the security dialog pops up, no matter if I click on "Do not show again" or not.
What's the right way to avoid this behavior? Should I pass arguments dynamically to the jnlp file?
This issue was fixed in Java 8 Update 161. You can now define secure arguments within your JNLP, which won't be used for the hash calculation. Simply put the property
<property name="jnlp.secure.argument.<argument-name>" value="true"/>
into your jnlp file. You can also use a wildcard, so that all arguments are marked secure
<property name="jnlp.secure.argument.*" value="true"/>