问题标签 [jsr223]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 如何将 Rhino-JavaScript 数组转换为 Java-Arrays
我有以下内容:
如何将 sun.org.mozilla.javascript.internal.NativeArray 类型的结果对象转换为相应的 java 数组?有人可以向我展示一个工作代码示例吗?它应该适用于字符串和整数数组。另外,很高兴知道在哪里可以找到 rhino 引擎和 java 之间的其他数据类型转换。
顺便说一句,我知道这个页面,但我真的在寻找一个工作代码示例。
java - 使用 JSR-223 从 Jython 脚本中获取数据
我将 Jython 2.5.1 与 JSR-223(即 javax.script 包)一起使用,并且我希望返回 Python 脚本的最后一行。例如,在评估此脚本后:
我应该回到 35,但我得到了 null。另一方面,它适用于其他测试:
我究竟做错了什么?
这是Java代码:
PS:它适用于 JRuby、Groovy 和 Rhino,即总是返回最后一行。
提前致谢。
java - 无法加载 JRubyEngine,因为找不到 org.apache.bsf.util.BSFEngineImpl
我正在尝试在自定义应用程序中使用 JRuby,但我似乎无法加载该JRubyEngine
对象。我的课程在功能上看起来与此类似:
然而,这在编译时失败了:
有人对我可以从哪里获得这门课有任何见解吗?或者,如果有更好的方法来实例化 JRubyEngine 对象。
java - 代替在具有实际文件名的 Java Rhino (JSR223) 中
在我的代码中,所有脚本都包含在 .js 文件中。每当其中一个脚本包含错误时,我都会得到以下信息:
javax.script.ScriptException: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "nonexistant" 未定义。(<Unknown source>#5) 在 <Unknown source> 的第 5 行
让我烦恼的是<未知来源>。多个文件在一个 ScriptContext 中,很难找到错误。它看起来也很可怕。
有没有办法用实际文件名替换 <Unknown Source> ?我看到的方法都不支持传递 File 对象,所以我在这里真的很困惑。
java - 为什么 jrunscript 不尊重我的类路径?
我正在尝试使用 Java 6 中包含的 Rhino 从 JavaScript 进行一些 JDBC 访问。但我无法DriverManager
找到Driver
我想要使用的内容。
这两个例子应该是等价的:
爪哇:
JavaScript:
...但是当我运行它们时,我得到了这种行为:
爪哇:
太好了,它设法加载驱动程序并尝试解析服务器。
JavaScript:
为什么找不到类?我试过带和不带importPackage()
and importClass()
,带和不带Packages
前缀。如果我注释掉forName
,则DriverManager
找不到合适的驱动程序。
java - Java 1.5 上的 JSR223 实现是否有限制
用于脚本语言的 Java API (JSR223) 是 Java 1.6 的标准配置,可以在此处为 Java 1.5 单独下载。
我的问题是:如果使用 1.5 的单独下载与 1.6 中的本机支持,我应该注意哪些限制或差异?
java - 用户输入公式解析(eval)
大家好,
我试图弄清楚如何允许用户对某些指定数据调用方法。
我想提供一组预定义的功能:
- 移动平均线,moving_ave(x,5) ..将是 x 的 5 天移动平均线。
- 3*x+y....等等...
所以基本上,我将为用户提供各种数据系列(x,y,z ....)和一组函数moving_ave,+ - / * ....他们应该能够编写简单的公式(仅限于我提供的功能)。
如何才能做到这一点?
我将在App Engine for Java上部署它。
所以因为我发现了 JSR-223 ......但我不确定它是否合适?我想我可以使用 Eval 功能。
谢谢,
groovy - JSR223 及其隐秘异常
有没有办法从 JSR 223 获得更好的错误消息?我正在尝试使用它来运行 Groovy 脚本,每当执行中出现问题时,我都会得到真正神秘的异常。这是一个例子:
java - 合理处理 JSR223 Rhino 抛出的 ScriptException
我开始遇到一个非常有用的 JSR223 脚本环境的肮脏小秘密。
我正在使用 Java 6 SE 附带的内置 Rhino 版本,通过 JSR223ScriptingEngine
等访问它。
当我得到一个由我导出到 Javascript 环境中的 Java 对象引起的异常时,它是一个ScriptingException
包装sun.org.mozilla.javascript.internal.WrappedException
我真正异常(例如UnsupportedOperationException
或其他)的包装
getFileName() 返回 null ,ScriptingException
getLineNumber() 返回 -1。但是当我查看消息和调试器时,它WrappedException
具有正确的文件名和行号,它只是没有通过 ScriptingException 的 getter 方法发布它。
伟大的。现在我该怎么办?我不知道我将如何使用 sun.org.mozilla.javascript.internal.wrappedException 无论如何它都不是公共类。