【问题标题】:SimpleFramework and ORMLite - Foreign Collections - cannot instantiateSimpleFramework 和 ORMLite - 外部集合 - 无法实例化
【发布时间】:2012-08-22 17:06:59
【问题描述】:

我们在我们的 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 一起使用?

【问题讨论】:

    标签: android ormlite foreign-collection


    【解决方案1】:

    尝试改用Collection,我认为您应该使用ElementList 而不是Element

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多