Yes. You must wrap the .dll in the .jar file and reference it in the .jnlp file using <nativelib>
See here for more details.
If you want to run the executable, it is best to pack it into your .jar as a resource, explode it (say) with a temporary directory, and then run it using the usual Process / Runtime mechanism.
source share