Search

Дополнение Search предоставляет функциональность полнотекстового поиска для вашего приложения. Оно позволяет настраивать индексацию сущностей и загруженных файлов, а также предоставляет API и UI-компоненты для поиска по индексированным данным. Результаты поиска фильтруются на основе прав доступа к данным текущего пользователя.

Дополнение использует Elasticsearch или OpenSearch (начиная с Jmix 2.3) в качестве поисковой системы. Оно может работать только с одной из них одновременно.

Для получения дополнительной информации о внутренних механизмах поиска и индексации обратитесь к документации Elasticsearch или OpenSearch.

Установка

Для автоматической установки через Jmix Marketplace следуйте инструкциям в разделе Дополнения.

По умолчанию дополнение будет установлено с поддержкой OpenSearch.

Если вы обновляете проект с предыдущей версии Jmix с установленным дополнением, оно сохранит поддержку Elasticsearch.

Для ручной установки добавьте следующие зависимости в ваш build.gradle:

implementation 'io.jmix.search:jmix-search-flowui-starter'
implementation 'io.jmix.search:jmix-search-starter'
implementation 'io.jmix.search:jmix-search-opensearch-starter'

Если вы хотите переключиться между Elasticsearch и OpenSearch, замените jmix-search-opensearch-starter на jmix-search-elasticsearch-starter или наоборот:

implementation 'io.jmix.search:jmix-search-elasticsearch-starter'

Подключение к сервису поисковой системы

Для подключения к сервису Elasticsearch/OpenSearch укажите следующие свойства в файле application.properties:

  • jmix.search.server.url - полный URL сервиса.

  • jmix.search.server.login - логин для базовой аутентификации.

  • jmix.search.server.password - пароль пользователя, используемый для подключения к сервису.

Совместимость версий

Java API клиенты для Elasticsearch/OpenSearch имеют прямую совместимость с версией сервера.

Дополнение использует Elasticsearch Java API client v8.10.4, который поддерживает ES 8.10+ (но также должен поддерживать более старые версии вплоть до самой старой версии, все еще поддерживаемой Elastic - 7.17.x).

Для OpenSearch дополнение использует Java API client v2.10.3.

Обратите внимание, что дополнение Search в настоящее время не совместимо с сервисом Elasticsearch, предлагаемым AWS.