jeudi 2 décembre 2010

Liferay : Générer un flux RSS à l'aide d'OpenSearch

La portlet Search de Liferay permet d'effectuer une recherche dans les contenus d'un portail Liferay, éventuellement limitant la recherche à la communauté courante.


En essayant de résoudre une défaut lié au fait que cette recherche ne ramène pas de résultat pour les contenus de type Journal ou Documents, dès lors qu'ils sont positionnés dans des portlets "scopées", j'ai découvert un fonctionnement intéressant.

La recherche Liferay, outre l'indexation basée par défaut sur Lucene, s'appuie sur le standard OpenSearch. L'implémentation d'Opensearch comprend également la possibilité d'effectuer la recherche par url avec résultat au format atom.
Le format de l'url est :
http://<hostname:port>/c/search/open_search?keywords={searchTerms}&amp;p={startPage?}&amp;c={count?}&amp;format=atom

searchTerms pouvant comprendre à priori des éléments de syntaxe, notamment sur des Fields de l'indexation (tags, title, date, ...), on peut ainsi créer rapidement sont flux RSS.

Un exemple : http://www.liferay.com/c/search/open_search?keywords=opensearch&format=atom

Par rapport à mon problème initial, cela m'a permis de vérifier que la recherche par ce biais me ramène bien tous les contenus, y compris ceux placés dans des portlets "scopées". Ce qui va me permettre de progresser dans la résolution...

1 commentaire:

  1. Je me commente moi-même : la résolution de mon ano est adressée par la révision 61743 de Liferay : http://svn.liferay.com/changelog/portal/?cs=61743

    A reporter sur 6.0.5 ou attendre 6.1

    RépondreSupprimer