非常感谢任何关于以下和相当简单的功能的帮助。我试图在CQ5中启用同义词匹配AEM和我一直在使用http://dev.day.com/docs/en/crx/current/developing/searching_in_crx.html作为指导。
我正在尝试创建一个同义词并让搜索工作也适用于#34;平板电脑"至于"画面"和" Tablette"。我创建了一个小的synonyms.properties文件,其中包含以下条目:
tablet=Tablette
tablet=tableau
Tablette=tablet
(第三行是强制性的,因为它是第一行的对应物)。我也改编了worspace.xml和repository.xml:
synonyms.properties位于 C:\ TEMP \作者\ CRX-快速启动\库\工作空间\ crx.default \索引
worspace.xml位于
C:\ TEMP \笔者\ CRX-快速入门\库\工作区\ crx.default
已添加以下条目
<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 \笔者\ CRX-快速入门\库
已添加以下条目
<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>
当我在平板电脑上搜索时,我得到了我的平板电脑,当我在画面上搜索时,我也得到了相应的条目,但肯定这2个关键字不被视为同义词。
有人可以确认配置的正确性以及是否可以添加其他调试?
非常感谢, Wim
答案 0 :(得分:1)
我能够通过搜索Jackrabbit解决这个谜(因为AEM使用Apache Jackrabbit查询)。诀窍是使用波形符或〜字符。
假设您使用JCR-SQL2,只需使用以下语法:
SELECT productType FROM [nt:base] AS s WHERE ISDESCENDANTNODE([/content/mywebsite/en/products])
and contains(productType, '~tableau')
我希望其他用户可以从这些信息中受益。 维姆