我正在尝试使用Android的Simple XML库并使用它获得一些错误(http://pastebin.com/7Nrk1esD),其中主要错误是:
"org.eclipse.persistence.indirection.IndirectList in loader dalvik.system.PathClassLoader..."
必须反序列化的模型也被休息服务器用来生成必要的XML,还有一些JPA注释如下:
@OneToMany
@ElementList(required = false)
private List<Substance> substances = new ArrayList<>();
此行生成以下xml输出:
<substances class="org.eclipse.persistence.indirection.IndirectList">
...
</substances>
这里我现在看到错误的来源--Android并不知道org.eclipse.persistence! 但我现在的问题是:为什么行 class =“... IndirectList”会产生,如何更改它以避免Android应用程序中的错误?
PS:我使用简单的2.6.2
提前感谢!
答案 0 :(得分:1)
找到答案here:
Strategy strategy = new TreeStrategy("clazz", "len");
Serializer serializer = new Persister(strategy);
但我只在Android客户端中使用此代码段来反序列化,而不是在服务器中序列化模型。
答案 1 :(得分:0)
试试这个
@OneToMany
@Path("substances")
@ElementList(required = false, inline=false)
private List<Substance> substances = new ArrayList<>();
这应该有用。