Just in case anybody else runs into this problem, you have to put a space in front of the filename in the code, such as var url = dir + " dynamictree-webstart.jnlp";
in the following script:
<script>
<!-- using JavaScript to get location of JNLP file relative to HTML page -->
var dir = location.href.substring(0, location.href.lastIndexOf('/')+1);
var url = dir + " dynamictree-webstart.jnlp"; //note the space
deployJava.createWebStartLaunchButton(url, '1.6.0');
</script>
I just love all the various weird quirks in all these various app servers and browsers! It makes programming such a joy to waste so much time figuring out tedious and mundane quirks like these. Someday perhaps our industry will be FORCED by the CUSTOMER, as CUSTOMER GROUPS who PAY ALL THE BILLS, to create INDUSTRY STANDARDS, similar to the IEEE for electrical appliances where an electrical plug at Google works the same way as an electrical plug at IBM or anywhere else.