camel-jpa查询 - 使用参数选择

时间:2017-11-21 11:46:07

标签: apache-camel camel-jpa

我正在尝试使用jpa组件来选择我从标头获取的id。 我在使用本机选择查询的文档中找到了一个示例:

from("direct:query").to("jpa://org.apache.camel.examples.MultiSteps?query=
select o from org.apache.camel.examples.MultiSteps o where o.step = 1");

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

from("direct:query").to("jpa://org.apache.camel.examples.MultiSteps?query=
select o from org.apache.camel.examples.MultiSteps o where o.step = ${header.id}");

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

org.hibernate.QueryException: unexpected char: '{'

也许还有另一种方法可以让它发挥作用?

1 个答案:

答案 0 :(得分:-1)

我设法根据这个question解决了这个问题:

只需要使用toD而不是:

from("direct:query").toD("jpa://org.apache.camel.examples.MultiSteps?query=
select o from org.apache.camel.examples.MultiSteps o where o.step = ${header.id}");