Exécuter un fichier javaScript extrene

Author:


Download

 
import java.io.InputStreamReader;
import java.util.List;
 
import javax.script.Invocable;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
 
public class Main {
  public static void main(String[] args) throws Exception
    {
      ScriptEngineManager mgr = new ScriptEngineManager();
      ScriptEngine moteure = mgr.getEngineByName("javascript");
 
      // Exécuter les scripts du fichier script.js
      moteure.eval(new InputStreamReader(Main.class.getResourceAsStream("script.js")));
 
      List<String> listMois = (List<String>) moteure.get("listMois");
      if (listMois != null)
       {
        for (String s : (List<String>) listMois) {
          System.out.println(s);
        }
      }
      Invocable moteureInv = (Invocable) moteure;
      Object obj = moteure.get("listJour");
      Object listJour = moteureInv.invokeMethod(obj, "getJour");
      if (listJour != null)
      {
        for (String s : (List<String>) listJour)
        {
          System.out.println(s);
        }
      }
  }
}