ReferenceError: “alerta” não está definido

Eu estou tentando chamar uma função de script java do código java.

Aqui está meu código Java

    public static void main(String[] args) throws FileNotFoundException {
    try {
        /**
         * To call a anonymous function from java script file
         */
        ScriptEngine engine = new ScriptEngineManager()
                .getEngineByName("javascript");
        FileReader fr = new FileReader("src/js/MySpec.js");
        engine.eval(fr);

    } catch (ScriptException scrEx) {
        scrEx.printStackTrace();
    }
}

Aqui está o meu arquivo de script java:

(function() {
  alert("Hello World !!!");
})();

Mas quando eu corro principal método de classe de driver está me dando erro como abaixo:

Exception in thread "main" javax.script.ScriptException: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "alert" is not defined. (<Unknown source>#2) in <Unknown source> at line number 2
at com.sun.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:110)
at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:232)
at Java6RhinoRunner.load(Java6RhinoRunner.java:42)
at Java6RhinoRunner.main(Java6RhinoRunner.java:12)

O que eu sei é que precisa de algum mecanismo de script para executá-lo.

Para isso eu adicionei o arquivo rhino.jar ao meu caminho de classe. Mas isso não está funcionando.

Eu não estou conseguindo como resolver esse erro. Por favor, ajuda. Obrigado antecipadamente.

questionAnswers(1)

yourAnswerToTheQuestion