2016-04-29 46 views
1

我目前有一個具有2個子類的對象的情況,我想有一個typeConverter使用父類和分別管理每個子類的邏輯是可能的嗎?駱駝類型轉換器和對象繼承

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

目前,我收到我在使用拆分()的列表,我想要的類型轉換當我嘗試這樣做是爲了管理子

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


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

,駱駝拋出異常說TypeConverter的不爲SubClass1和SubClass2找到。我該如何妥善管理?

回答

1

您可以爲SubClass1和SubClass2編寫2個類型轉換器,然後調用共享部分的一些通用代碼。

或者您可以使用回退式轉換器。

您可以在駱駝文檔中找到更多詳細信息:http://camel.apache.org/type-converter.html