无法在流集中将外部js脚本添加到javascript评估器

时间:2018-07-23 13:50:56

标签: streamsets

我在流集中的javascript评估器内部使用了外部javascript。但是,当我尝试加载外部代码时,出现以下错误。我该如何解决。谢谢

  

ERROR SafeScheduledExecutorService-未捕获,可抛出   com.streamsets.pipeline.lib.executor.SafeScheduledExecutorService$SafeCallable@69717812:   com.streamsets.datacollector.util.PipelineException:PREVIEW_0003-   预览时遇到错误:   java.security.AccessControlException:访问被拒绝   (“ java.io.FilePermission”   “ /opt/streamsets-datacollector-user-libs/test.js”“读取”)   com.streamsets.datacollector.util.PipelineException:PREVIEW_0003-   预览时遇到错误:   java.security.AccessControlException:访问被拒绝   (“ java.io.FilePermission”   “ /opt/streamsets-datacollector-user-libs/test.js”“读取”)

1 个答案:

答案 0 :(得分:1)

当我回复elsewhere时,您将需要添加安全策略以能够加载脚本文件。将以下内容添加到$SDC_CONF/sdc-security.policy中:

// Set global perm so that JS can load scripts from this directory
// Note - this means any code in the JVM can read this dir!
grant {
  permission java.io.FilePermission "/opt/streamsets-datacollector-user-libs/-", "read";
};

您需要重新启动Data Collector才能使对安全策略文件的更改生效。