Apache Camel: Как получить транзакционный маршрут в Camel, если у меня есть доступ к БД на маршруте, а затем к конечной точке производителя FTP? - PullRequest
0 голосов
/ 10 ноября 2018

Мой маршрут:

from(jms:queue:xxx)
...
.process(_db_access__here_will_be_written_in_db)
...
.to(ftp:yyy)

Проблема в том, что после того, как сообщение будет прочитано из очереди, данные будут записаны в базу данных, но если производителю конечной точки ftp не удалось записать файл в каталог, я получаю сообщение об ошибке в маршруте, но Изменения в БД не будут откатываться.

Я хочу зафиксировать изменения в БД только тогда, когда файл будет успешно записан в каталог ftp. Как я могу сделать это в моем маршруте?

1 Ответ

0 голосов
/ 12 ноября 2018

вы смотрите транзакционный клиент .

вы также можете добавить транзакцию, если вы используете camel-sql

sql:insert into tables value (id=:#myId)?transacted=true
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...