Cloudfoundry上的Grails应用程序:找不到RhinoScriptEngineFactory

时间:2012-08-13 10:29:31

标签: grails rhino cloudfoundry

在我的grails应用程序中,我需要执行从远程服务器获取的一些javascript(而不是JSON):

new javax.script.ScriptEngineManager().getEngineByName("javascript")

但得到错误:找不到RhinoScriptEngineFactory

我认为RhinoScriptEngineFactory(JSR 223)包含在JDK / JRE中。我错了吗?有人知道向Cloudfoundry应用程序添加Javascript支持的正确方法吗?

1 个答案:

答案 0 :(得分:2)

如果使用java7运行时标志暂存应用程序,它应该可以工作,例如

vmc push grails-hello --path=target/hello-world-0.1.war --runtime=java7

您可以在控制器中看到以http://grails-hello.cloudfoundry.com/hello/index运行的示例,其中包含以下代码;

package hello.world
import javax.script.ScriptEngine;

class HelloController 
{
  def index() 
  { 
      ScriptEngine engine = new javax.script.ScriptEngineManager().getEngineByName("javascript");
      render "hello world (" + engine.toString() + ")";
  }
}