Camel TypeConverters和Object继承

时间:2016-04-29 13:12:03

标签: java apache-camel

我目前有一个带有2个子类的对象的情况,我想让一个typeConverter使用父类并分别管理每个子类的逻辑吗?

class MyParent {}
class SubClass1 extends MyParent {}
class SubClass2 extends MyParent {}

我目前收到一个列表,我使用了split(),我想要一个类型转换器来管理子类

from("direct:source")
    .split(body()).streaming()
        .beanRef(MyBean.class, "myMethod");


class MyBean {
    public void myMethod(MyParent parent) {
        //TODO stuff
    }
}

当我尝试这样做时,camel会抛出异常,说SubClass1和SubClass2找不到typeConverter。我该如何妥善管理?

1 个答案:

答案 0 :(得分:1)

您可以为SubClass1和SubClass2编写2个类型转换器,然后为共享部件调用一些公共代码。

或者您可以使用后备类型转换器。

您可以在Camel文档中找到更多详细信息:http://camel.apache.org/type-converter.html