在 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>
哪里<a:guid>
可以重复1..N
我的元素注释如下所示:
@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>
解析完成后,Collection 包含与 XML 中出现的标记一样多的项目。但是,Guid 属性始终为 NULL。
我尝试使用命名空间/前缀属性,但结果始终相同 - Guid 属性中的 NULL 值。
有任何想法吗?