3

I downloaded the .jnlp file and ran it. It runs fine. I close it and start it again, it runs fine.

However on the third try, it always throws java.lang.NullPointerException and the application will not launch.

If I restart the computer it works again. How can I fix this ?

java.lang.NullPointerException
    at com.sun.javaws.security.SigningInfo.overlapSigners(Unknown Source)
    at com.sun.javaws.security.SigningInfo.getCertificates(Unknown Source)
    at com.sun.javaws.LaunchDownload.checkSignedResourcesHelper(Unknown Source)
    at com.sun.javaws.LaunchDownload.checkSignedResources(Unknown Source)
    at com.sun.javaws.Launcher.prepareResources(Unknown Source)
    at com.sun.javaws.Launcher.prepareAllResources(Unknown Source)
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
    at com.sun.javaws.Launcher.launch(Unknown Source)
    at com.sun.javaws.Main.launchApp(Unknown Source)
    at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
    at com.sun.javaws.Main$1.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
5
  • hard to say, post the code... Commented Dec 8, 2010 at 2:01
  • Apparently it's a signing issue? Commented Dec 8, 2010 at 2:07
  • I think your application is not terminating properly. When you close your application it still running. You can share your piece of code.. Commented Dec 8, 2010 at 2:08
  • program doesn't show up in task manager and neither does java.exe Commented Dec 8, 2010 at 2:14
  • I hate saying this, but, can you perhaps try to just reinstall the JRE and see if this persists? Commented Dec 8, 2010 at 3:18

2 Answers 2

5

The stacktrace is the same as in Bug ID 6533653 and Bug ID 6850598. The root cause seems to be an empty JAR in JNLP. They said to have fixed it in Java 1.6 update 2 and Java 1.6 update 18 respectively.

However, there is a comment in the last bug which complains that the fix still doesn't work in 1.6 update 18, along with a description which look much like your situation:

In vm 6u18 this bug is NOT closed. You can launch your application once but after you have the following exception :

java.lang.NullPointerException
    at com.sun.javaws.security.SigningInfo.overlapSigners(Unknown Source)
    at com.sun.javaws.security.SigningInfo.getCertificates(Unknown Source)
    at com.sun.javaws.LaunchDownload.checkSignedResourcesHelper(Unknown Source)
    at com.sun.javaws.LaunchDownload.checkSignedResources(Unknown Source)
    at com.sun.javaws.Launcher.prepareResources(Unknown Source)
    at com.sun.javaws.Launcher.prepareAllResources(Unknown Source)
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
    at com.sun.javaws.Launcher.launch(Unknown Source)
    at com.sun.javaws.Main.launchApp(Unknown Source)
    at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
    at com.sun.javaws.Main$1.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

If I remove the empty jar from jnlp, all is ok. Please verify your correction before publication

So, try removing the empty JAR from the JNLP and report it to the JNLP authors as well.

Sign up to request clarification or add additional context in comments.

1 Comment

which is the empty jar ? As far as I know all of them are at least 2KB in size.
1

We saw this issue as well for users with version 1.6.0_18.

I took a look at the jars listed in my jnlp file and found a license jar jumped out as a likely candidate for a jar with no classes. I confirmed this with jar tf.

As a quick test I removed the jar from the jnlp file and I did not get the error. However, I needed the license jar for a 3rd party library.

I updated my build file to bundle the license jar into my application jar

<jar jarfile="${dist}/lib/${application}.jar">
    <zipgroupfileset dir="${extLib}" includes="runtime.jar" />
...
</jar>

The 3rd party library could locate the license info in the classpath and no more errors!

1 Comment

I tried this and found some of my jars weren't in the folder at all, so try an ls *.jar too.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.