首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java ScriptEngine -禁止导入

Java ScriptEngine -禁止导入
EN

Stack Overflow用户
提问于 2014-05-03 21:11:20
回答 1查看 679关注 0票数 1

我一直在到处寻找,但什么也没找到,所以我想使用java内置的JavaScript引擎,但是用户不能导入java类,就像下面的任何一个:

代码语言:javascript
复制
importPackage(package.example);

代码语言:javascript
复制
importClass(package.example.MessWithEverythingClass)

代码语言:javascript
复制
new package.example.MessWithEverythingClass(ApplicationIsBroken aib);
EN

回答 1

Stack Overflow用户

发布于 2014-07-07 09:17:57

我有点困惑。根据您的标题,我认为您希望阻止用户在JavaScript中导入类。在这种情况下,这个问题已经在这里被提出了,security problem with Java ScriptEngine。一些解决方案建议查看Java,另一位用户表示,他通过将"importPackage = SecurityManager“放在所有脚本的顶部来解决这个问题。

相反,根据您的脚本内容,我感觉您在导入Java类时遇到了问题。如果是这种情况,我在这里回答,Use a jar in JavaScript through Java ScriptEngine基本上有另一种在JavaScript内部导入的方法,您没有展示。我是这样做的,

代码语言:javascript
复制
    pack = Packages.abc.foo.pack.name;

    var foo = new pack.ClassFromTheJarFile("arg1","arg2");

    foo.doSomething();

    var fooSister = new pack.AnotherCLassFromTheJarFile("arg1");

    fooSister.doSomthingFromThisClass();

尽管该示例使用来自jar文件的包,但它不必来自jar,并且代码仍然保持不变。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23444878

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档