我正在与Apache Camel Bindy合作处理不同数据模型的csv文件。 例如文件一是数据模型,文件二是数据模型二。 在camel路由中,我将BindyCsvDataFormat的两个调用与不同的数据模型相关联:
<bean id="bindyDataformat" class="org.apache.camel.dataformat.bindy.csv.BindyCsvDataFormat">
<constructor-arg name="type" value="com.barclays.creditit.cls.eoddata.model.risk.DataModel1" />
</bean>
<bean id="aBindyDataformat" class="org.apache.camel.dataformat.bindy.csv.BindyCsvDataFormat">
<constructor-arg name="type" value="DataModel2" />
</bean>
路线看起来像这样:
<from uri="direct:start"/>
<bean ref="fileReader"/>
<unmarshal ref="bindyDataformat" />
<bean ref="flattener"/>
<bean ref="fileReader"/>
<unmarshal ref="aBindyDataformat" />
<bean ref="flattener"/>
当我运行代码时,工厂有两个自动关联的模型,而不是每个运行一个。并且这两个文件都被读入第一个数据模型的对象,而不是第二个数据模型。关于如何让它工作的任何建议?
谢谢!
答案 0 :(得分:0)
使用不同的文件过滤器创建两个不同的路径,并使用其中一个Bindy格式化程序单独处理它们。