2012-08-28 36 views
0

我們在我們的Android應用程序中使用ORMLite 4.41和麪臨這個問題:SimpleFramework和ORMLite - 國外集合 - 不能實例

班有一個定義的一列:

@Element(required = false) 
@ForeignCollectionField(eager=true, orderColumnName="Name", 
    columnName="TestItems") 
public ForeignCollection<TestItem> Test 

在B類,我們有定義的外柱:

@DatabaseField(foreign=true, foreignAutoRefresh=true, 
    columnName="TestItems") 
public TestSummary TestItemId; 

當我們運行它和它接收的輸入XML,Serializer.read方法被調用,其中,輸出應爲填充有外鍵是類初始化。

不幸的是,它總是與異常停止:

org.simpleframework.xml.core.InstantiationException: Cannot instantiate interface 
    com.j256.ormlite.dao.ForeignCollection for field 'Test' public 
    com.j256.ormlite.dao.ForeignCollection xxxxxxxx.TestModel$TestSummary.Test 

有什麼辦法如何與SimpleFramework一起使用ForeignCollection

回答

1

嘗試使用Collection代替,我認爲你應該使用ElementList而不是Element

@ForeignCollectionField(eager=true, orderColumnName="Name", 
    columnName="TestItems") 
@ElementList(required = false) 
public Collection<TestItem> Test