0

2つのアクティビティ間でORMLiteを使用してオブジェクトを送信するにはどうすればよいForeignCollectionですか?それForeignCollectionはシリアル化できませんか?シリアル化できないオブジェクトが原因でこれを取得してIOExceptionいます。

例:マイコールクラス

@ForeignCollectionField(eager = false)
private transient ForeignCollection<CallObjective> _callObjectives;

My CallObjectiveクラス:

@DatabaseField(columnName = "CallId", foreign = true, foreignAutoRefresh = true)
private Call _call;
4

1 に答える 1

3

ORMLiteのバージョン4.26では、EagerForeignCollectionクラスをよりシリアル化できるようにいくつかの改善を行いました。先日、トランクにバグがあり、[残念ながら]LazyForeignCollection使用しているクラスのeager = falseシリアル化が停止していることがわかりました。これはバージョン4.28で修正される予定です。

コレクションがシリアル化可能であったとしても、適切に逆シリアル化するにはコンテキストが多すぎるため、レイジーコレクションでは何もできません。ほとんどの操作で例外をスローするシェルになります。

于 2011-10-21T12:54:59.160 に答える