Переопределить org. apache .solr.handler.dataimport.JdbcDataSource для jdb c data прямой драйвер sqlserver - PullRequest
0 голосов
/ 10 апреля 2020

Мне нужно переопределить метод getConnection () класса JdbcDataSource, чтобы разблокировать драйвер Data direct .

Когда solr выполняет запросы sql, присутствующие в solr-data-config. xml внутри ядра solr, он не может выполнить sql запросы. Сбой с ошибкой « этот драйвер заблокирован для использования со встроенными приложениями ».

Я мог бы переопределить метод getConnection () и разблокировать драйвер, расширив класс JdbcDataSource. Но Solr не поднимает мой расширенный класс. Как настроить solr с расширенным JdbcDataSource.

1 Ответ

1 голос
/ 10 апреля 2020

Я думаю, что самым простым способом было бы создать новый класс, расширяющий старый, переопределить вызов getConnection(), включить класс в .jar-файл, добавить .jar-файл в библиотеки, загружаемые Solr , затем используйте новое имя в определении вашего источника данных - dataSource type="NewAndImprovedJdbcDataSource".

Вы должны добавить файл .jar к элементам lib в solrconfig.xml:

<lib dir="../../../<path>/" regex="my-library\.jar" />

Затем вы ссылаетесь на источник данных в конфигурации данных. xml файл:

<dataSource name="<name>" type="YourCustomClass" />
...