首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CQ5 -搜索-启用同义词匹配

CQ5 -搜索-启用同义词匹配
EN

Stack Overflow用户
提问于 2014-03-11 19:24:28
回答 1查看 878关注 0票数 0

对以下功能的任何帮助都是非常感谢的。我正尝试在CQ5 \ AEM中启用同义词匹配,并且我一直使用crx.html作为指导。

我试图创建一个同义词,并且搜索"tablet“和"tableau”和"Tablette“。我创建了一个包含以下条目的小型synonyms.properties文件:

代码语言:javascript
复制
tablet=Tablette
tablet=tableau
Tablette=tablet 

(第三行是强制性的,因为它是第一行的对应物)。我也修改了worspace.xml和repository.xml:

C:\temp\author\crx-quickstart\repository\workspaces\crx.default\index中的synonyms.properties

C:\temp\author\crx-quickstart\repository\workspaces\crx.default中的worspace.xml

添加了以下条目

代码语言:javascript
复制
<SearchIndex class="com.day.crx.query.lucene.LuceneHandler">
    <param name="path" value="${wsp.home}/index"/>
    <param name="resultFetchSize" value="50"/>
    <param name="synonymProviderClass" value="org.apache.jackrabbit.core.query.lucene.PropertiesSynonymProvider"/>
    <param name="synonymProviderConfigPath" value="synonyms.properties"/>
</SearchIndex>

repository.xml位于C:\temp\author\crx-quickstart\存储库中。

添加了以下条目

代码语言:javascript
复制
<SearchIndex class="com.day.crx.query.lucene.LuceneHandler">
    <param name="path" value="${wsp.home}/index"/>
    <param name="resultFetchSize" value="50"/>
    <param name="synonymProviderClass" value="org.apache.jackrabbit.core.query.lucene.PropertiesSynonymProvider"/>
    <param name="synonymProviderConfigPath" value="synonyms.properties"/>
</SearchIndex>

当我在平板电脑上搜索时,我得到了我的平板电脑,当我在tableau上搜索时,我也得到了相应的条目,但为了确定的是,这两个关键字不被视为同义词。

请有人确认配置的正确性,以及是否可以添加额外的调试?

非常感谢,Wim

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-20 15:23:07

我能够通过搜索Jack兔子来解决这个谜(因为AEM使用ApacheJack兔子查询)。诀窍是使用倾斜或字符。

假设您使用JCR-SQL2,只需使用以下语法:

代码语言:javascript
复制
SELECT productType FROM [nt:base] AS s WHERE ISDESCENDANTNODE([/content/mywebsite/en/products]) 
and contains(productType, '~tableau') 

我希望其他用户将受益于这一信息。威姆

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22334644

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档