Mega Code Archive

 
Categories / Java / JDK
 

Invoke an function

import javax.script.Invocable; import javax.script.ScriptEngine; import javax.script.ScriptEngineManager; import javax.script.ScriptException; public class InvocableTest {   public static void main(String args[]) {     ScriptEngineManager manager = new ScriptEngineManager();     ScriptEngine engine = manager.getEngineByName("javascript");     try {       engine.eval("function myFunction(name){var output = '';"           + "  for (i = 0; i <= name.length; i++) {output = name.charAt(i)+'-'+ output"           + "  } return output;}");       Invocable invokeEngine = (Invocable) engine;       Object o = invokeEngine.invokeFunction("myFunction", "abcde");       System.out.println(o);     } catch (NoSuchMethodException e) {       System.err.println(e);     } catch (ScriptException e) {       System.err.println(e);     }   } }