0

我应该从 java 调用一个 javascript 函数。

我使用 ScriptManager:

ScriptEngineManager factory = new ScriptEngineManager();
ScriptEngine engine = factory.getEngineByName("JavaScript");
engine.eval(new java.io.FileReader("js/myjsfile.js"));
Invocable inv = (Invocable) engine;   
Boolean val=(Boolean)inv.invokeFunction("check", value);  

我得到一个 java.io.FileNotFoundException。

我的项目使用tomcat目录结构:

-java src
-WebContent
 index.jsp
 ->js-> myjsfile.js
 ->jsp
 ->WEB-INF
 ->META-INF

如何从 java 文件访问 js/myjsfile.js?

编辑 我解决了

 String path = request.getServletContext().getRealPath("/js/myjsfile.js");
4

1 回答 1

1

您可以使用绝对路径来读取 js 文件,并且“catalina.home”的绝对路径可以从 System 属性中获取。

于 2013-09-04T10:03:38.037 回答