[rfc] [icedtea-web] better error reporting for LaunchException in plugin

Jiri Vanek jvanek at redhat.com
Mon Jan 28 13:08:31 PST 2013


Ping?

On 01/21/2013 12:35 PM, Jiri Vanek wrote:
> Launch errors are thrown from netx, and printed out .. somewhere. At the end plugin (correctly) fails with NPE.
> It Is not nice. Eg in SplashError dialogue they can not be shown.
>
> I have added static accumulator for LaunchErrors (== all errors preceding npe in plugin) and then I'm adding this chain of exception to Splash error report.
>
> It is quite useful - see example - but there is one pitfall. As accumulator being static, it is cumulating errors from all running applets :(
> However I have not found a way how to distinguish between individual applets :( (any idea welcomed!)
> I have added small warkaround with timestamps and localised explanation.. and.. it is still better then nothing :)
>
>
> J.
>
>
> **example**
>
> So now instead of plain, nothing saying
> "IcedTea-Web Plugin version: 1.4pre+rb646c8b9c2e2+
> Mon Jan 21 12:29:17 CET 2013
> java.lang.NullPointerException
> at net.sourceforge.jnlp.NetxPanel.runLoader(NetxPanel.java:130)
> at sun.applet.AppletPanel.run(AppletPanel.java:380)
> at java.lang.Thread.run(Thread.java:679)"
>
> Is there:
>
> IcedTea-Web Plugin version: 1.4pre+rb646c8b9c2e2+
> Mon Jan 21 12:29:17 CET 2013
> java.lang.NullPointerException
> at net.sourceforge.jnlp.NetxPanel.runLoader(NetxPanel.java:130)
> at sun.applet.AppletPanel.run(AppletPanel.java:380)
> at java.lang.Thread.run(Thread.java:679)
>
> Chain:
> 1) at Mon Jan 21 12:27:27 CET 2013
> net.sourceforge.jnlp.LaunchException: Fatal: Application Error: The applet was unsigned. The applet was unsigned, and the security policy prevented it from running.
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.initializeResources(JNLPClassLoader.java:680)
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.<init>(JNLPClassLoader.java:240)
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:374)
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:347)
> at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:751)
> at net.sourceforge.jnlp.Launcher.getApplet(Launcher.java:713)
> at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:942)
> 2) at Mon Jan 21 12:27:27 CET 2013
> net.sourceforge.jnlp.LaunchException: Fatal: Initialization Error: Could not initialize applet.
> at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:784)
> at net.sourceforge.jnlp.Launcher.getApplet(Launcher.java:713)
> at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:942)
> Caused by: net.sourceforge.jnlp.LaunchException: Fatal: Application Error: The applet was unsigned. The applet was unsigned, and the security policy prevented it from running.
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.initializeResources(JNLPClassLoader.java:680)
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.<init>(JNLPClassLoader.java:240)
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:374)
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:347)
> at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:751)
> ... 2 more
> 3) at Mon Jan 21 12:27:29 CET 2013
> net.sourceforge.jnlp.LaunchException: Fatal: Application Error: The applet was unsigned. The applet was unsigned, and the security policy prevented it from running.
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.initializeResources(JNLPClassLoader.java:680)
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.<init>(JNLPClassLoader.java:240)
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:374)
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:347)
> at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:751)
> at net.sourceforge.jnlp.Launcher.getApplet(Launcher.java:713)
> at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:942)
> 4) at Mon Jan 21 12:27:29 CET 2013
> net.sourceforge.jnlp.LaunchException: Fatal: Initialization Error: Could not initialize applet.
> at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:784)
> at net.sourceforge.jnlp.Launcher.getApplet(Launcher.java:713)
> at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:942)
> Caused by: net.sourceforge.jnlp.LaunchException: Fatal: Application Error: The applet was unsigned. The applet was unsigned, and the security policy prevented it from running.
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.initializeResources(JNLPClassLoader.java:680)
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.<init>(JNLPClassLoader.java:240)
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:374)
> at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:347)
> at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:751)
> ... 2 more
>




More information about the distro-pkg-dev mailing list