具有简单表达式的Camel SQL组件

时间:2016-01-21 10:54:43

标签: spring apache-camel camel-sql

我正在尝试使用Apache Camel实现类似HTTP代理的功能。 在我的代理中,我想在DB中插入一个标头值,我在SQL中使用了Simple Expression。

这是我的骆驼路线。

<route>
    <from uri="servlet:///foo" />
    <to uri="sql:INSERT INTO TEST_TABLE (TEST_ID, NAME) 
        VALUES(:#${header.testId}, 'test')?noop=true&amp;dataSource=testDataSource" />
    <to uri="http4://localhost:8080/test/bar?bridgeEndpoint=true" />
</route>

我能够插入标头值,但是在此路由中的SQL端点之后我丢失了请求体。 回复是400。

例外是

HTTP operation failed invoking http://localhost:8080/test/bar with statusCode: 400

我发现原因是简单表达。 但是,我不知道为什么Simple Expression删除了一个请求体,以及我如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。

原因是一种请求体。

http://camel.apache.org/why-is-my-message-body-empty.html