我有这个XML文件
<web>
<listcuadrillas>
<cuadrilla>
<idCuadrilla>LUJAN 01</idCuadrilla>
</cuadrilla>
<cuadrilla>
<idCuadrilla>LUJAN 02</idCuadrilla>
</cuadrilla>
<cuadrilla>
<idCuadrilla>LUJAN 03</idCuadrilla>
</cuadrilla>
<cuadrilla>
<idCuadrilla>XPRUEBA</idCuadrilla>
</cuadrilla>
</listcuadrillas>
</web>
我有这个课程
public class CuadrillaData
{
public String idCuadrilla = "";
public CuadrillaData(){}
}
public class ParametroData
{
public LinkedList<CuadrillaData> listcuadrillas = new LinkedList<CuadrillaData>();
public ParametroData(){}
}
我想在这个类中加载XML文件。
这是我的加载程序代码
File oFile = new File(sPath, sArchivo);
XStream oXmlParser = new XStream();
oXmlParser.alias("web",ParametroData.class);
oXmlParser.alias("cuadrilla",CuadrillaData.class);
oXmlParser.addImplicitCollection(ParametroData.class, "listcuadrillas" );
但它不起作用 这是错误
com.thoughtworks.xstream.converters.ConversionException: listcuadrillas : listcuadrillas
---- Debugging information ----
message : listcuadrillas
cause-exception : com.thoughtworks.xstream.mapper.CannotResolveClassException
cause-message : listcuadrillas
class : com.gic.horizontal.ParametroData
required-type : com.gic.horizontal.ParametroData
converter-type : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
path : /web/listcuadrillas
line number : 3
version : 0.0
-------------------------------
我的错误是什么?
答案 0 :(得分:0)
离开
oXmlParser.addImplicitCollection(ParametroData.class, "listcuadrillas" )
出。由于您在列表周围有一个标记listcuadrillas
,其中包含包含该集合的字段的名称,因此XStream不需要提示(并且实际上很困惑)。