Nous avons une entité personnalisée dans Liferay appelée «Publication». Il est indexé dans Elastic-search et contient un champ nommé 'journalArticleId'.

Sur la base de nos exigences de recherche, si un utilisateur recherche un mot-clé dans l'article de revue, nous devons renvoyer le document de publication qui contient le 'journalArticleId' de la revue respective.

J'ai trouvé la solution pour implémenter cela à l'aide de l'API Java, mais je recherche l'API Liferay pour résoudre ce problème.

API Java Elastic Search Parent-Child Data Search

Merci d'avance pour toute réponse.

1
Vishnu S Kumar 26 juil. 2017 à 16:56

2 réponses

Vous devriez pouvoir trouver de la documentation pour remplacer un indexeur. Il semble que vous pourriez simplement étendre l'indexeur de journaux existant: ajoutez simplement les données de publication supplémentaires à l'index de texte intégral de l'article de journal existant et il sera trouvé automatiquement.

Edit (après votre commentaire): Sans chercher, je suppose que l'encapsulation de l'API par Liferay ne tient pas vraiment compte des relations parent-enfant (mais: je me trompe peut-être, cela pourrait être facile ou facile). Cependant, Liferay vous permet également d'échanger Elasticsearch avec SOLR (et potentiellement d'autres) afin que son API n'utilise naturellement pas toutes les fonctionnalités des moteurs de recherche sous-jacents. Cependant, vous devriez toujours pouvoir effectuer vous-même les appels supplémentaires - probablement pas dans l'indexeur mais plus près de l'adaptateur ES.

La solution peut être la suivante: Préparez le contenu dans l'indexeur et séparez-le plus tard en parent et enfant, dans l'adaptateur Elasticsearch.

1
Olaf Kock 28 juil. 2017 à 08:05

Pour l'extension des indexeurs existants, vous devriez essayer d'implémenter un hook de post-processeur d'indexeur ... au lieu de les surcharger avec un plugin ext

Lien pour 6.2 https://dev.liferay.com/de/develop/tutorials/-/knowledge_base/6-2/extending-the-indexer-post-processor-using-a-hook

Lien pour 7 aka dxp https: //dev.liferay. com / de / develop / reference / - / knowledge_base / 7-0 / indexer-post-processor

1
André 26 juil. 2017 à 17:12