Чтение содержимого файла с использованием имени файла из db in camel
Я должен сделать запрос в БД, чтобы получить имена файлов из таблицы. А затем я должен прочитать содержимое файлов в папке / каталоге, используя имена файлов, которые я получил из запроса. Я выполнил часть запроса и сохранил список имен файлов в Exchange с помощью bean-компонента. Но мне интересно, как я могу использовать эти имена в обмен на чтение содержимого файла. Не могли бы вы помочь?
1 ответ
Вы можете использовать шаблон Content Enricher ( http://camel.apache.org/content-enricher.html) и Camel 2.16 с динамическими конечными точками для загрузки содержимого файла по пути, ранее полученному из базы данных.
ОБНОВЛЕНО
Вы должны использовать pollEnrich (потому что файловый компонент является потребителем опроса), чтобы использовать файлы из URI, и вы можете использовать выражение (например, Simple) для настройки fileName.
Вы можете попробовать что-то подобное (только для верблюжьей версии более 2.16):
.pollEnrich("file:?fileName=${header.FILE_NAME}", 1000, new YourAggregationStrategy())