Lucene JCR-OAK查询与节点类型

Lucene JCR-OAK查询与节点类型,lucene,jcr,jackrabbit,Lucene,Jcr,Jackrabbit,我正在开发ApacheJackrabbitOak 1.3.2。 我已经创建了一个具有以下结构的节点MyNode,并保存在存储库中。 -'jcr:primaryType'=橡木:非结构化 -“名称”=“我的节点” 我还创建了一个lucene索引,根据。 但是,当我运行以下查询时,我没有得到任何结果。 从[oak:Unstructured]中选择*,其中name='myNode' 当运行以下查询时,我将在结果中获得保存的“MyNode” '从[nt:base]中选择*,其中[jcr:primaryT

我正在开发ApacheJackrabbitOak 1.3.2。 我已经创建了一个具有以下结构的节点MyNode,并保存在存储库中。 -'jcr:primaryType'=橡木:非结构化 -“名称”=“我的节点” 我还创建了一个lucene索引,根据。 但是,当我运行以下查询时,我没有得到任何结果。 从[oak:Unstructured]中选择*,其中name='myNode' 当运行以下查询时,我将在结果中获得保存的“MyNode” '从[nt:base]中选择*,其中[jcr:primaryType]='oak:Unstructured'和name='myNode'

为什么我不能用[oak:Unstructured]进行查询,而这是声明的nodeType 如何验证我是否能够利用创建的lucene索引? 谢谢

为什么我不能用[oak:Unstructured]进行查询,而这是声明的nodeType

我无法查询的原因是在创建节点期间,仅将属性“jcr:primaryType”设置为“oak:Unstructured”是不够的。我们需要将此属性的类型显式设置为NAME,否则它将被视为字符串属性

如何验证我是否能够利用创建的lucene索引

仅仅创建索引节点不能满足索引的需要,我们还需要使用索引初始化存储库。我使用以下行在我的存储库中启用索引

      jcr.withAsyncIndexing();