我的道具课程:
public class Props {
private static String name;
private static float price;
//normal getters and setters;
}
我的XML
<root>
<Props>
<name>Test1</name>
<ownedBy>NULL</ownedBy>
<price>1000</price>
</Props>
<Props>
<name>Test2</name>
<ownedBy>NULL</ownedBy>
<price>1000</price>
</Props>
</root>
现在当我调用in.readObject();
两次(作为我的对象输入流)时,我收到错误:
com.thoughtworks.xstream.converters.ConversionException: Could not set field class
com.mwerner.main.Props.name : null : Could not set field class
com.mwerner.main.Props.name : null
我在一个单独的项目中尝试了代码,它运行得很漂亮。现在在更大的主要项目中,我在一个名为initProps();
的自定义方法中调用整个事情。那就是当它全部下地狱的时候。为什么呢?
答案 0 :(得分:1)
我找到了解决方案。
我根据XStream教程编写了一个自定义转换器。对于unmarshal方法,我只为剩余的字段添加了更多reader.MoveDown(); setvalue... reader.MoveUp();
级别。