我正在尝试编写一个查询,其中我可以从AEM的某个位置获取内容,日期为今天的24个月,但该日期不是基于发布/修改/创建日期。他们要求的日期基于称为“发布发布日期”的内容。
我在创建日期之后有以下工作:
String sqlstmt = "SELECT * "
+ "FROM [nt:unstructured] AS comp "
+ "WHERE ISDESCENDANTNODE(comp, '" + pathLocation + "') "
+ " AND [sling:resourceType] = 'nvenergy/components/content/pressrelease' "
+ " AND comp.[jcr:created] >= "
+ " CAST('" + julianEndDateString + "T00:00:00.000Z' AS DATE) "
+ " AND comp.[jcr:created] < "
+ " CAST('" + julianCurrentDateString + "T00:00:00.000Z' AS DATE) "
+ " ORDER BY 1 ASC";
但我真的需要它不在这里找到的内容的“发布发布日期”:
...
if (currentNode.hasProperty("pressreleasepublishdate")) {
Calendar publishedDate =
currentNode.getProperty("pressreleasepublishdate").getDate();
...
我可以进行连接或使用某些东西将节点的属性用于发布日期而不是[jcr:created]
作为我的范围吗?或者我是否必须执行查询将其保存在临时列表中并根据发布日期的节点属性进行求助?