Как внедрить источник данных Agroal в сервлет в Quarkus?
У меня есть приложение Quarkus, которое запускает сервлет, и я пытаюсь внедрить источник данных Agroal, поскольку есть поток, который работает внутри сервлета, где мне нужно выполнить некоторые транзакции базы данных. Тем не менее, я также пробовал приведенную ниже реализацию внутри класса Thread и другого статического класса, который используется внутри потока, но в обоих классах источник данных возвращает null.
Я также добавил свойства источника данных в файл application.properties . Также сервлет настроен на загрузку при запуске, поэтому, как только приложение запускается, поток также запускается. Этот поток запускается после инициализации сервлета.
класс LoopThread расширяет поток {
@Inject @Named("db") Источник данных AgroalDataSource;
общественный LoopThread () { супер (); }
@Override public void run() {try {DbUtil.userErrorLogged = false;DbUtil.initDataSource(источник данных);LogUtil.debug("Поток запущен.");
поймать (Исключение ex) {LogUtil.error(ex); }
}}
Я попытался внедрить источник данных в класс Thread, а также в статический класс Util, но оба не вернули источник данных. Я думаю, связано ли это с потоком, который запускается при инициализации сервлета. Любая помощь в этом была бы отличной