diff options
author | Sven Gothel <[email protected]> | 2014-01-31 05:07:19 +0100 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2014-01-31 05:07:19 +0100 |
commit | e56a94189aac504b144100fb1962a1a8b05c86af (patch) | |
tree | 874c2e2d72bba7236fad3c8ab0a2195ae44da388 /netx/jogamp/plugin/jnlp | |
parent | d77c4c7f9f16a74d5ea81ff372e71550a66dfcd8 (diff) |
Applet3Panel: Clarify ClassLoader role; Start Applet3Panel.loaderThread before Applet3Panel.handle (applet thread), joined at APPLET_INIT
Diffstat (limited to 'netx/jogamp/plugin/jnlp')
-rw-r--r-- | netx/jogamp/plugin/jnlp/NetxApplet3Panel.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/netx/jogamp/plugin/jnlp/NetxApplet3Panel.java b/netx/jogamp/plugin/jnlp/NetxApplet3Panel.java index 875dc5a..0d79911 100644 --- a/netx/jogamp/plugin/jnlp/NetxApplet3Panel.java +++ b/netx/jogamp/plugin/jnlp/NetxApplet3Panel.java @@ -98,11 +98,8 @@ public class NetxApplet3Panel extends Applet3Panel implements SplashController { super.showAppletException(t); } - //Overriding to use Netx classloader. You might need to relax visibility - //in sun.applet.AppletPanel for runLoader(). @Override protected void runLoader() { - try { bridge = new PluginBridge(baseURL, getDocumentBase(), @@ -158,8 +155,11 @@ public class NetxApplet3Panel extends Applet3Panel implements SplashController { OutputController.getLogger().log("JNLPRuntime already initialized"); } } + final ThreadGroup tg = getThreadGroup(); + loaderThread = new Thread(tg, this, "NetxLoaderThread @ " + this.documentURL); + loaderThread.start(); - handler = new Thread(getThreadGroup(), this, "NetxPanelThread@" + this.documentURL); + handler = new Thread(tg, this, "NetxPanelThread @ " + this.documentURL); handler.start(); } @@ -177,6 +177,9 @@ public class NetxApplet3Panel extends Applet3Panel implements SplashController { } @Override + public boolean useCustomAppletClassLoader() { return true; } + + @Override public ClassLoader getAppletClassLoader() { return appInst.getClassLoader(); } |