通过文档扩展在Liferay文档库中搜索

时间:2011-11-22 17:59:47

标签: search lucene indexing liferay

我正在开发一个用于高级搜索liferay内容的模块,我被困在文档库搜索中,它被要求按文档类型搜索文档,我想知道这个功能的可行性,我已经检查过liferay代码,发现文档库索引器不索引文档扩展名,而是索引整个文件名

请帮我解决这个问题

1 个答案:

答案 0 :(得分:1)

如果您使用的是6.0或更高版本,则可以使用hook插件更改文档索引的方式。

只需在liferay-hook.xml

中定义即可
<indexer-post-processor>
    <indexer-class-name>com.liferay.portal.model.DLFileEntry</indexer-class-name>
    <indexer-post-processor-impl>com.example.hook.indexer.DLFileEntryIndexerPostProcessor</indexer-post-processor-impl>
</indexer-post-processor>

在你的后处理器类中扩展com.liferay.portal.kernel.search.BaseIndexerPostProcessor并实现你需要更改的方法。

在这种情况下,您需要实现postProcessDocument以将扩展名添加为索引字段,并postProcessSearchQuerypostProcessFullQuery将其作为搜索查询的一部分包含在内。