X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms.ui%2Fsrc%2Forg%2Fargeo%2Fcms%2Fscript%2FScriptUi.java;h=fd9aa9d31d7297602e5d2498ad7b9f92e6626db5;hb=5f1074b1658db47705b0b532099e19ba918c5745;hp=a15c6c98bd986a82a85b0b56eab218c9e79ddef4;hpb=00baefdde06ccc6acd6493f5752b98f008419feb;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms.ui/src/org/argeo/cms/script/ScriptUi.java b/org.argeo.cms.ui/src/org/argeo/cms/script/ScriptUi.java index a15c6c98b..fd9aa9d31 100644 --- a/org.argeo.cms.ui/src/org/argeo/cms/script/ScriptUi.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/script/ScriptUi.java @@ -6,7 +6,6 @@ import javax.jcr.Node; import javax.jcr.RepositoryException; import javax.script.Invocable; import javax.script.ScriptEngine; -import javax.script.ScriptEngineManager; import javax.script.ScriptException; import org.apache.commons.logging.Log; @@ -15,9 +14,8 @@ import org.argeo.cms.ui.CmsUiProvider; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.osgi.framework.BundleContext; -import org.osgi.framework.wiring.BundleWiring; -public class ScriptUi implements CmsUiProvider { +class ScriptUi implements CmsUiProvider { private final static Log log = LogFactory.getLog(ScriptUi.class); private boolean development = true; @@ -30,19 +28,22 @@ public class ScriptUi implements CmsUiProvider { // private Bindings bindings; // private String script; - public ScriptUi(BundleContext bundleContext, String path) { - ScriptEngineManager scriptEngineManager = new ScriptEngineManager(); - ClassLoader bundleCl = bundleContext.getBundle().adapt(BundleWiring.class).getClassLoader(); - ClassLoader currentCcl = Thread.currentThread().getContextClassLoader(); - try { - Thread.currentThread().setContextClassLoader(bundleCl); - scriptEngine = scriptEngineManager.getEngineByName("JavaScript"); - scriptEngine.put(CmsScriptRwtApplication.BC, bundleContext); - } catch (Exception e) { - e.printStackTrace(); - } finally { - Thread.currentThread().setContextClassLoader(currentCcl); - } + public ScriptUi(BundleContext bundleContext,ScriptEngine scriptEngine, String path) { + this.scriptEngine = scriptEngine; +//// ScriptEngineManager scriptEngineManager = new ScriptEngineManager(); +// ClassLoader bundleCl = bundleContext.getBundle().adapt(BundleWiring.class).getClassLoader(); +// ClassLoader originalCcl = Thread.currentThread().getContextClassLoader(); +// try { +//// Thread.currentThread().setContextClassLoader(bundleCl); +//// scriptEngine = scriptEngineManager.getEngineByName("JavaScript"); +//// scriptEngine.put(CmsScriptRwtApplication.BC, bundleContext); +// scriptEngine = CmsScriptRwtApplication.loadScriptEngine(originalCcl, bundleCl); +// +// } catch (Exception e) { +// e.printStackTrace(); +// } finally { +// Thread.currentThread().setContextClassLoader(originalCcl); +// } this.appUrl = bundleContext.getBundle().getEntry(path); load(); }