We have created a jnlp file that creates a desktop shortcut. It create the shortcut and launches with no difficulties on any of the machines we are testing on. On my machine if we make any updates it updates fine. On two of our test machines (one running windows xp and the other a mac) the shortcut launches in offline mode but never gets the updated jnlp. Have tried moving the cache to a location with no whitespaces and that did not work either.
I assume you're updating the version number? (e.g. 2.2 to 2.3)
When you view the javaws resources (particularly the jnlp file in your case) in the control panel ("javaws -viewer" in command prompt will launch panel, click "view" on the general tab) do they show an entry in the "expired" column?
If you are not setting the expires header when returning the file from the server javaws is perhaps assuming the old jnlp is still valid?