Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在aem中显示所有可用的标签_Java_Jsp_Tags_Aem - Fatal编程技术网

Java 在aem中显示所有可用的标签

Java 在aem中显示所有可用的标签,java,jsp,tags,aem,Java,Jsp,Tags,Aem,我正在尝试制作一个组件,该组件可以打印crx中所有可用的标记,但是我得到了一个空指针异常。我创建了以下界面 package com.aem.community.core.services; 导入java.util.ArrayList; 导入java.util.HashMap; 导入java.util.Map; 公共接口列表标签{ 映射listAllTags(); }这是因为您试图将ResourceResolver注入OSGI服务。你不能这样做: @Reference private Resou

我正在尝试制作一个组件,该组件可以打印crx中所有可用的标记,但是我得到了一个空指针异常。我创建了以下界面

package com.aem.community.core.services;
导入java.util.ArrayList;
导入java.util.HashMap;
导入java.util.Map;
公共接口列表标签{
映射listAllTags();

}
这是因为您试图将ResourceResolver注入OSGI服务。你不能这样做:

@Reference
private ResourceResolver resourceResolver;

可能是在使用资源解析程序时抛出了NullPointerException。有两种方法可以在OSGI服务中获取资源解析程序,但您可以参考或

此答案,以帮助其他寻求高效遍历资源树的人,而不是编写多个循环并调试它们。 Sling API提供了一个名为AbstractResourceVisitor.html()的抽象实现 ACS commons提供了一个示例实现


TLDR:实现一个扩展AbstractResourceVisitor的具体类,该类使用需要执行的操作覆盖访问方法。如果在继续遍历时需要考虑自定义条件,则还可以覆盖accept方法。

您这样做是作为学习API的练习,还是在尝试满足一些业务需求?如果是后者,则可能有更好的方法来获取标记列表。坦白地说,我不知道你为什么要这么做。另外:你介意共享NullPointerException的stacktrace吗?有几个指针:1)使用TagManager API 2)避免使用JSP脚本。更多信息: