问题标签 [scriptengine]
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.
securitymanager - 带有 SpringSecurity 的 Java SecurityManager
我尝试加入 Java Security Manager 以使用 SpringSecurity (SS) 进行项目。我的目标是:我的项目与 SS 一起使用,并将 dataSource(db2 数据库)作为身份验证管理器。我将 ScriptManager(ScriptEngine) 添加到项目中。现在我尝试设置项目的安全性,拒绝不受信任的代码。我使用 NetBeans 并在 Tomcat (6.0.20) 的属性中设置“使用安全管理器”。接下来,我编辑了 {catalina.base}/conf/catalina.police。我添加了下一个“赠款”:
而现在的问题。当我在调试器下运行我的代码时,我得到下一个错误:
和tomcat出来:
此外,当我插入此赠款时:
一切都好。
操作系统:openSUSE 11.1 OpenJDK 1.6.0.0-b11
对于本教程使用的设置:http: //www.mikeski.net/site/node/18
谢谢大家...
java - 将 Jruby ScriptEngine 输出重定向到 StringWriter
我最近在尝试为我的 ruby 会话重定向 ScriptEngine 输出时遇到了一个奇怪的问题。似乎无论我传入我的 ScriptEngine 什么,它总是打印到 stdout 和 stderr。我找到了这篇文章,但它说它已修复。
https://scripting.dev.java.net/issues/show_bug.cgi?id=8
我正在运行 sbt 并使用最新版本的 jruby-complete.jar,但它仍然每次都进入标准输出。这个问题真的解决了吗?
我也尝试传递eval(...)
一个 StringWriter,但是当我之后尝试拉出一个字符串时,我得到了一个数组异常。
java - JVM 缺少 Rhino
我有一个使用 ScriptEngine 处理一些 javascript 的项目,并且在我的机器上运行良好,但是当我将项目的 jar 发送到服务器时,我发现服务器的 JVM 没有内置 Rhino,返回 null 时代码调用
我去了rhino的下载页面,得到了最新版本,并从中提取了js.jar,将jar添加到项目中,但仍然有同样的问题。
c# - parse and execute JS by C#
i have simple crawler which crawl and search page. but now i have problem how to execute and parse js link from that page. Does anyone have any idea how to parse and execute js page?
example:
- some_url is simple to parse with webhtmltoolktit
- JAVASCRIPT:runmeat(1,7,0,2,7,9) is js link which redirect then to some_url2 page and this page i need to crawl then. but problem is how to execute this javascript in C# to get that some_url2 link?
java - Java:在应用程序中嵌入脚本引擎:JSR 223 (ScriptEngine) 仍然是一个好的解决方案吗?
我想在我的 Java 应用程序中使用一种或多种脚本语言。
从JRuby 网站我发现有 3 种方法:
- 使用 Java 6(使用 JSR 223:脚本)
- 嵌入 Bean 脚本框架 (BSF)
- 直接调用 $YOUR_SCRIPTING_ENGINE$ API
由于我需要支持超过 1 个脚本引擎,我认为选项 3 不够好。
在寻找解决方案 1. JSR 223: Scripting 时,我开始寻找包含所有脚本引擎集成的 zip 存档
但是这个文件在网上无处可寻(项目主页的下载部分是空的。如果我愿意,我可以下载源代码并构建我需要的引擎集成。源代码看起来很旧(我所看到的 2 年以上)
JSR 223 是否仍然存在并且是一个可供选择的好解决方案?如果不是,那么 Bean Scripting Framework 是一个不错的选择吗?最后一个文档页面非常差,只支持少数脚本语言(但它支持我想要的大部分语言)......
jruby - JRuby 1.6.1- const_missing 错误取决于 factory.getEngineByName("jruby")
在将 JRuby 从 1.5.2 升级到 1.6.1 时,我遇到了一个有趣的问题。整个周末都让我毛骨悚然,直到我把它归结为几行。当 getEngineByName 被调用太多次时,似乎某个地方可能引入了一个错误,导致失败。例如,以下超简单代码在 1.5.2 中有效,但在大约 10-20 次迭代后在 1.6.1 中失败:
#16 之后的 1.6.1 结果:
为了避免这个问题,您需要做的就是将 getEngineByName 移到循环之外:
不幸的是,出于架构原因,这对我的应用程序来说并不容易。我可能必须将单独的 ScriptEngine 实例放在 ThreadLocal 中。不过,不明白为什么这会失败让我担心。
关于为什么我会收到此“NameError:未初始化常量”错误的任何想法?不,我还没有尝试检查源...
freemarker - 将 FreeMarker 与 Apache Sling 一起使用
我正在使用下面有 Apache Sling 的内容存储库 (Adobe CQ5)。我想使用 FreeMarker 而不是 JSP 来呈现网页。
为此,我应该将 OSGi Freemarker 扩展上传到 Sling(可在 Sling 源代码的贡献部分中找到),还是应该上传 OSGi 版本的 Freemarker?两个 jar 都实现了接口 javax.script.ScriptEngineFactory 所以我不知道使用哪一个,或者同时上传两者。
groovy - How to execute Javascript code from groovy and get the results as a map?
How can I get the results of executed javascript code from groovy? I tried the following, but I always get back the string "world". I would have expected an object or map.
java - 在 Java ScriptEngine 中使用 Quercus 时如何注册 Quercus 自定义函数?
我在 Apache JMeter 中使用 Quercus 来编写简单的测试脚本。我需要使用 log4j 从 PHP 登录,总的来说这很好用。所以我写了一个这样的 Quercus 模块:
现在,我正在使用以下代码对此进行测试:
公共类 QuercusTest {
}
这会引发异常(如我所料),因为未注册此自定义函数。
但是,我看不到如何使用 Java 脚本引擎注册这个 Quercus 模块。文档有点稀疏......任何帮助将不胜感激。
java - 如何使用 JSR 223 保护脚本?
我使用 Groovy 作为动态脚本引擎,以允许我的 Web 应用程序的管理员用户创建小脚本作为界面解决方案的一部分,例如。做简单的字符串操作,tokenize 等等。
不幸的是,这打开了一个很大的漏洞,因为默认情况下脚本引擎会执行任何操作。
我在这里描述了一个演示应用程序:http: //javadude.wordpress.com/2011/06/29/creating-a-zk-groovy-console/
您可以执行System.exit(0)
which 关闭 AS 甚至 shell 命令,如"ls -l".execute().text
或只是窥探系统设置println InetAddress.localHost.hostAddress
我可以在执行之前进行字符串检查,例如过滤System.xyz
或execute.xyz
有什么经验或食谱吗?
谢谢
斯文