我可以在一个包中包含多个 Bindy 带注释的类,并且仍然在 Camel 中解组 CSV 吗?

Spi*_*ina 1 apache-camel bindy

我想要一个像 my.company.bindy 这样的包,其中有几个类都用 Bindy 注释进行注释。然后我想要 Camel 路线可以将 CSV 解组为这些类型之一。我已经完成了所有工作,但是如果包中有多个带有 Bindy 带注释的类,则解组会失败。这是因为 Bindy 试图将 CSV 行解组到包中的每个类中。并且特定的行不会正确地编组到多个类中。我的数据格式在 Spring 中声明如下:

<bean class="org.apache.camel.dataformat.bindy.csv.BindyCsvDataFormat">
    <property name="packages" value="my.company.bindy"/>
</bean>
Run Code Online (Sandbox Code Playgroud)

Joh*_*hnC 5

Camel 2.16.0 已修复此问题。

来自http://camel.apache.org/bindy.html

“如果您使用多个模型,则每个模型都必须放置在其自己的包中,以防止出现不可预测的结果。

从 Camel 2.16 开始,情况不再是这样,因为您可以安全地在同一个包中拥有多个模型,因为您现在使用类名而不是包名来配置 bindy。”