Jackrabbit Sql2-Query - > DescendantNodeJoinCondition

时间:2011-03-04 11:16:06

标签: jackrabbit

idb:photo 
  idb:uploadName jcr:primaryType="idbt:metaData" idb:value="4.jpg"
  idb:size jcr:primaryType="idbt:metaData" idb:value="276757"
  idb:title jcr:primaryType="idbt:metaData" idb:value="Title: 4.jpg"
idb:photo>

首先,我无法看到我的代码示例! - >点击{}并在我的代码中提交!

我想获得照片节点的信息,例如标题 Title: 4.jpg 我有以下查询:

Query query = queryManager.createQuery("select * from [idbt:photo] as p inner join [idbt:metaData] as c on isdescendantnode(p, c) where c.[idb:value] = 'Title: 4.jpg'", Query.JCR_SQL2);

我的结果集为空。它应该用我匹配的节点填充!

出了什么问题?

问候

1 个答案:

答案 0 :(得分:0)

我不明白节点是如何存储的。是元数据节点/照片节点还是照片节点/元数据节点?

在查询中,您有 isdescendantnode(后代,父级),不是吗?它是一个子节点吗?你试过 ischildnode 吗?看看http://www.h2database.com/jcr/grammar.html#join

您使用的是什么版本的JackRabbit?你怎么知道结果是空的?如果由于某种原因您使用query.execute()。getRows.getSize()来尝试首先获得结果总数,请查看此https://issues.apache.org/jira/browse/JCR-2765