【发布时间】:2015-03-29 22:45:50
【问题描述】:
尝试将 Spring bean 添加到 Camel 主体属性。 比如:
MVEL: exchange.in.body.limit = uiLimit
<transform>
<mvel>
exchange.in.body.limit = uiLimit;
exchange.in.body;
</mvel>
</transform>
Spel: request.body.limit = uiLimit
或者甚至先放入标题:
<setHeader headerName="limit">
<simple>ref:uiLimit</simple>
</setHeader>
uiLimit 在哪里:
<bean id="uiLimit" class="java.math.BigInteger">
<constructor-arg value="${UI_LIMIT} />
</bean>
标题和属性仍然为空。
任何想法为什么注册表中的 bean 查找不适用于 OSGI? (单个包内的所有 bean/路由)
PS:这在 Route 中运行良好:
<bean ref="uiLimit" method="toString"/>
【问题讨论】:
-
什么是 ${UI_LIMIT},它是一个属性吗?而且,在最后一个代码块中,缺少 2 个右引号;-)
-
感谢您指出这一点。添加了报价。 ${UI_LIMIT} 是一个属性(字符串)
标签: java spring osgi apache-camel