2012-08-28 2 views
0
우리는 우리의 안드로이드 응용 프로그램에 ORMLite 4.41를 사용하여이 문제를 직면하고있다

인스턴스화 할 수 없습니다 클래스 B에서SimpleFramework 및 ORMLite - - 외국인 컬렉션

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

우리가 정의 외부 컬럼 :

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

우리 실행하며 Serializer.read 방법은 출력되는 외부 키가 가득 클래스이어야 곳이라고 입력 XML을 받으면 초기화 됨.

불행하게도, 그것은 항상 제외하고 중지하는 방법 SimpleFramework와 함께 ForeignCollection를 사용할 수있는 방법이

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 

있습니까?

답변

1

대신 Collection을 사용해보세요. Element 대신 ElementList을 사용해야한다고 생각합니다.

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