openjnlp.sh uses /usr/bin/java by default. Unfortunately, this is not necessarily the JRE the user might want it to be accessing. A convention is that if the user wants a different JRE than the default, it is pointed to by the JAVA_HOME environment variable. It would be nice if openjnlp.sh followed this convention.
I think the attached openjnlp.sh should do the job. It worked for me (with JAVA_HOME=/usr/local/java/j2sdk1.4.0).