我目前有一个带有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。我该如何妥善管理?
答案 0 :(得分:1)
您可以为SubClass1和SubClass2编写2个类型转换器,然后为共享部件调用一些公共代码。
或者您可以使用后备类型转换器。
您可以在Camel文档中找到更多详细信息:http://camel.apache.org/type-converter.html