我真的很新,所以我提前道歉。我有一个简单的脚本,我无法工作。我想要做的就是获取位于JCR中的特定资源的“lastModified”属性。
Resource getResource = resourceResolver.getResource("/content/AboutPage/jcr:content/list");
ValueMap properties = resource.adaptTo(ValueMap.class);
String lastModified = properties.get("jcr:lastModified", String.class);
相反,我得到的是以下错误:
Duplicate local variable properties
非常感谢任何帮助!谢谢!
答案 0 :(得分:3)
正如您所注意到的,您只需更改变量的名称即可避免此问题。
答案 1 :(得分:0)
而不是
ValueMap properties = resource.adaptTo(ValueMap.class);
放:
ValueMap properties = getResource.adaptTo(ValueMap.class);
答案 2 :(得分:0)
我刚刚意识到我做错了什么。如果我将“属性”更改为“属性”,它似乎有效。我猜你不能将值图改为“属性”。
Resource getResource = resourceResolver.getResource("/content/AboutPage/jcr:content/list");
ValueMap property = resource.adaptTo(ValueMap.class);
String lastModified = property.get("jcr:lastModified", String.class);
答案 3 :(得分:0)
CQ Taglibs. Check this link中定义了properties
这就是为什么你得到一个重复的变量错误。
此外,如果您确实使用CQ tablib,则无需创建自己的属性。只需使用默认属性。
<强>属性强> 当前资源的属性对象(org.apache.sling.api.resource.ValueMap)。
只检查JSP代码中是否存在<cq:defineObjects />
。
如果已定义CQ对象,则只使用默认属性对象。