问题标签 [camel-jpa]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1017 浏览

hibernate - camel-jpa“没有交易正在进行中”

我正在尝试使用骆驼 jpa 组件将实体写入数据库。问题是我得到

解析持久单元并创建表。这里是persistence.xml:

我创建了一个测试来编写一个实体:

由于没有真正的方法来开始和结束骆驼语义中的事务,我认为问题与设置有关?

那么如何解决这个问题呢?

编辑

我听从克劳斯的建议并添加.transacted()了路线。这产生No bean could be found in the registry of type: PlatformTransactionManager 然后我将此行添加到设置方法:

这又产生了javax.persistence.TransactionRequiredException: no transaction is in progress

我不确定在 JpaComponent 上配置什么以及将什么绑定到注册表中。

同时我调试了一下。我检查了 JpaProducer 中entityManager.flush()抛出异常的字段:trasactionTemplate 设置为“PRPAGATION_REQUIRED,ISOLATION_DEFAULT”,并带有正确的 JpaTransactionManager。

0 投票
1 回答
212 浏览

java - Apache Camel JPA 线程挂起

我使用 Java DSL 创建了一条路由,该路由具有 JPA 组件来定期轮询 DB 中的记录。它运行良好。我希望每条路线都有一个工作线程。如果 DB 出现故障或任何 N/W 问题持续几分钟,则路由无法按预期工作。应用程序正在运行。(即使在 DB 或 N/W 启动后,它也不会从 DB 轮询记录)。我认为工作线程挂起并且路由不起作用。

请任何人帮我解决这个问题。如何避免这个工作线程挂起?一旦 N/W 或 DB 启动,如何重新启动工作线程?

0 投票
1 回答
2701 浏览

apache-camel - Camel JPA 事务 + EntityManager

在我的实际应用中,我有一个业务层使用JPA根据一些业务规则来持久化数据,问题是camel-jpa事务没有与业务层事务共享。我需要业务类中的 EntityManager 与 Camel 事务范围集成,我该怎么做?

下面是一个简单的例子,但这反映了实际设计中的问题。

项目示例

服务等级

骆驼路线

骆驼上下文.xml

0 投票
1 回答
1266 浏览

apache-camel - camel-jpa 查询 - 带参数选择

我正在尝试使用 jpa 组件通过从标题中获得的 id 进行选择。我在使用本机选择查询的文档中找到了一个示例:

我试图用 ${header.id} 替换“1”常量:

它似乎不起作用,我得到:

也许还有另一种方法可以做到这一点?

0 投票
0 回答
223 浏览

java - Camel - 通过 JPA 组件从 Oracle DB 获取队列条目并在异常时更新所述条目

我们想在我们的 Oracle DB 上使用一个表作为虚拟队列。应该使用 Apache Camel 使用 JPA 组件处理队列。每个条目都包含必须将有效负载转发到的 JMS 队列的名称。处理队列项目并将其转发给另一个消费者工作正常,但我在考虑当条目中命名的队列不存在时应该发生什么。这个想法是,当发生错误时,我们正在更新所述条目,以便我们在数据库中看到错误,并且忽略该条目以进行进一步处理,直到错误解决。我正在使用一些方法来处理异常,使用 spring-dsl 和一个处理器来为用于更新条目的 jpa 组件准备主体。

所以实际发生的是似乎正在尝试更新表,但它没有继续处理队列。我假设条目或其他东西上仍然有锁。无论如何,我很确定我做的不对,因为如果我理解正确,它会尝试删除该条目,假设它会继续按预期进行。

谢谢。

0 投票
0 回答
264 浏览

java - 无法使用骆驼和openjpa检索多个实体

我正在使用 spark-rest 组件,并希望使用 JPA 端点使用 Camel-jpa 和 openJpa 从 oracle DB 中获取多个实体。我已经阅读了 Camel in Action 2 中的第 6.5 章,但一次只能通过其 ID 获得一个实体。但是,我在尝试使用 jpa 检索多个实体时遇到了很多麻烦,最终导致 openJpa 异常,与使用或不使用参数进行选择无关。

这是我的路线:

@Entity 注解的类如下:

向上面定义的端点发送 GET 请求时返回的异常是这样的:

尝试使用单元测试获取这些实体时,我得到了类似的堆栈跟踪。

根据这个失败的 jpa 测试,它看起来像 OpenJpa 中的一个错误,但还没有找到使用 jpa 组件的解决方法。

有什么建议么?

顺便说一句:这已经在本地进行了测试,但要与 OSGI 兼容,这是我不深入 Spring jpa 的主要原因。

0 投票
0 回答
128 浏览

apache-camel - Camel JPA 组件路由未完全执行

我使用 JPA 组件创建了一个简单的路由

在控制台中,我可以看到正在触发的查询

但在此之后我看不到日志被打印出来,处理器也没有被执行。延迟后,查询继续触发,但没有异常,并且路由处理未完成。日志没有打印,处理器也没有被调用。我更改了日志级别仍然没有异常。

我只想让我的路线完成它的执行,这样我就可以在处理器中写一些东西。

相同的查询给出数据库中的所有行。

请提出问题所在?

0 投票
1 回答
938 浏览

spring-boot - Spring Boot Camel JPA 没有本地事务加入

我在用

我的应用程序

我的路线

我的后端路由

马文

我收到错误

我正在关注示例,https://github.com/apache/camel/tree/master/examples/camel-example-spring-boot-rest-jpa但我没有使用 Spring Boot 2.0.3,我使用的是 1.5.10。

更新

我意识到我有一个JmsTransactionManager

我需要为 Jpa 定义额外的 transactionManager 吗?还需要什么?

0 投票
0 回答
79 浏览

apache-camel - Camel spring xml jpa 事务路由未以独立模式启动

我尝试将具有弹簧事务策略的 jpa 事务管理器应用于一条路线。结果,它正在启动并抛出问题。您能否让我知道问题的原因和解决方案。您能否分享一下独立模式的骆驼 jpa 交易的任何快速入门。我可以找到保险丝和服务器模式的快速入门。