aem - 从视觉上的 javascript 使用函数调用 OSGi 服务

标签 aem rhino sightly

我正在尝试从 sightly javascript use function 访问 OSGi 服务.通过吊索SlingScriptHelper .我可以调用sling.getService(Service.class)来自javascript的方法,但我不知道如何在javascript中指定类。

好像是should be possible使用完全限定名称或使用 rhino 的 importPackage(..) 引用 java 类.

但是,我得到以下异常:

org.apache.sling.scripting.sightly.SightlyException:
org.mozilla.javascript.EvaluatorException: Can't find method
org.apache.sling.scripting.core.impl.InternalScriptHelper.getService(object).

最佳答案

为此,请在前面添加 Packages到完全限定的类名,例如

var myService = sling.getService(Packages.com.myco.MyService);

(其中 com.myco.MyService 是服务接口(interface))

https://github.com/Adobe-Consulting-Services/acs-aem-commons/blob/master/content/src/main/content/jcr_root/apps/acs-commons/sightly/templates/dhlm.js#L23例如。

关于aem - 从视觉上的 javascript 使用函数调用 OSGi 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31265046/

相关文章:

AEM6 视力 : How to pass a parameter from HTML to a method from Java-model class?

xpath - 如何基于页面属性使用Xpath提取多个CQ页面

java - 来自 Java 的 Rhino JS/ScriptEngine - 整数输入,双倍输出?

adobe - 如何使用 sightly 从 Adob​​e AEM 中的列表访问嵌套的子属性?

aem - Sightly 模板 (AEM/CQ) 中的条件属性

javascript - 使用 AEM 的 Javascript Use-API,如何将函数传递到 HTL 端并使用参数调用它?

java - 将图像数据 InputStream 转换为字符串,然后从该字符串返回图像不会给出图像

javascript - 在 javascript Eclipse 中配置 rhino

javascript - 如何将 Birt Report 中的对象传递给 HTML 动态文本(布局)

java - AEM 6.1 : Enable Rich text editor (RTE) plugins on Touch UI