我使用Java DSL创建了一条路由,它有JPA组件定期轮询DB中的记录。它运作良好。我希望每个路由都有一个工作线程。如果DB已关闭或任何N / W问题分钟,则路由未按预期工作。应用程序正在运行。(即使在DB或N / W启动后,也不会从DB轮询记录)。我认为工作线程挂起,路由不起作用。
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启动,如何重新启动工作线程?
答案 0 :(得分:0)
在JPA URI中添加2个参数后。 DB启动后工作正常。
+ "&sharedEntityManager=true"
+ "&joinTransaction=false"
<强> JPA component in camel cannot reconnect automatically to database 强>