我尝试使用Apache Camel和Dozer映射将一个类映射到另一个类。
在我的路线中,我在一个属性中保存了一个类的对象,比如.setProperty("test", testClass)
。现在我想从这个属性中获取类对象并将其映射到新类的字段。
camel推土机文档Camel Dozer表示可以将表达式映射到字段。如果我试图将该属性的值映射到相应的字段,我将始终null
作为值。
这就是我试图获取财产价值的方式
<field custom-converter-id="_expressionMapping" custom-converter-param="simple:${exchangeProperty.test}">
<a>expression</a>
<b>targetField</b>
</field>
有可能这样做吗?
答案 0 :(得分:0)
就在我的头顶,看着文档,你可能只是在“$”符号前面错过了一个'\':
<field custom-converter-id="_expressionMapping"
custom-converter-param="simple:\${exchangeProperty.test}">
<a>expression</a>
<b>targetField</b>
</field>
我认为它甚至在documentation:
的最后特别提到请注意,表达式中的任何属性都必须使用“\”进行转义,以防止Dozer尝试解析使用EL定义的变量值时出现错误。