Androidでは、SimpleFrameworkを使用して着信XMLを解析し、適切なオブジェクトを作成しています(後でDBに保存されます...)
XML の一部は次のようになります。
<CheckId xmlns:a="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<a:guid>00300001-0000-0000-0000-000000000000</a:guid>
</CheckId>
1..N<a:guid>
を繰り返すことができる場所
私の要素の注釈は次のようになります。
@ElementList(required = false, name="CheckId")
@Namespace(reference="http://schemas.microsoft.com/2003/10/Serialization/Arrays")
@ForeignCollectionField(eager = true, orderColumnName = "Guid", columnName = TABLE_CHECK_ID_LIST_COLUMN)
public Collection<TableCheck> TableCheckIdList;
そして、TableCheck クラスには次のものがあります。
@Root(name = "CheckId")
@Order(elements = { "guid" })
public static class TableCheck implements XMLParseable {
@Element(required = false, name="guid")
@DatabaseField
public String Guid;
...
}
解析が完了すると、コレクションには<a:guid>
、XML に表示されたタグと同じ数のアイテムが含まれます。ただし、プロパティ Guid は常に NULL です。
Namespace / Prefix 属性で遊んでみましたが、結果は常に同じです - Guid プロパティの NULL 値。
何か案は?