我们在Android应用程序中使用ORMLite 4.41,并面临以下问题:
在A类中定义了一列:
@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
有什么方法可以将ForeignCollection
与SimpleFramework一起使用吗?
尝试使用Collection
,我认为应该使用ElementList
而不是Element
。
@ForeignCollectionField(eager=true, orderColumnName="Name",
columnName="TestItems")
@ElementList(required = false)
public Collection<TestItem> Test