Apache Camel JPA Тема висела

Я создал один маршрут, используя Java DSL, в котором есть компонент JPA для периодического опроса записей из БД. это работает хорошо. Я надеюсь, что каждый маршрут имеет один рабочий поток. если DB не работает или возникла проблема с N/W в течение минуты, маршрут не работает должным образом. приложение запущено (оно не опрашивает записи из БД даже после того, как БД или N/W запущены). Я думаю, что рабочий поток завис, и маршрут не работает.

SimpleRegistry registry = new SimpleRegistry(); 
registry.put("datasource",myDataSourceObj);
CamelContext context = new DefaultCamelContext(registry); 
context.addRoutes(new myRouteBuilder()); 

from URI= "uri="jpa://br.rafaeltuelho.model.Customer?consumer.namedQuery=Customer.findAll&consumer.delay=30000&consumeDelete=true" 

пожалуйста, кто-нибудь, помогите мне решить эту проблему. Как избежать этого рабочего потока висела? Как перезапустить рабочий поток, когда N/W или DB запущены?

1 ответ

Решение

После добавления 2 параметров в JPA URI . он работает хорошо после того, как БД работает.

+ "&sharedEntityManager=true"
+ "&joinTransaction=false"

Компонент JPA в верблюде не может автоматически подключиться к базе данных

Другие вопросы по тегам