protected void initScriptEngine() { if (log.isDebugEnabled()) { log.debug("Initializing script mediator for language : " + language); } ScriptEngineManager manager = new ScriptEngineManager(); manager.registerEngineExtension("js", new RhinoScriptEngineFactory()); manager.registerEngineExtension("groovy", new GroovyScriptEngineFactory()); manager.registerEngineExtension("rb", new JRubyScriptEngineFactory()); this.scriptEngine = manager.getEngineByExtension(language); if (scriptEngine == null) { handleException("No script engine found for language: " + language); } xmlHelper = XMLHelper.getArgHelper(scriptEngine); this.multiThreadedEngine = scriptEngine.getFactory().getParameter("THREADING") != null; log.debug( "Script mediator for language : " + language + " supports multithreading? : " + multiThreadedEngine); }