Входной XML:
<DeviceInfo dpId="..." rdsId="..." rdsVer="..." dc="..." mi="..." mc="...">
<additional_info>
<Param name="..." value="..." />
<Param name="..." value="..." />
</additional_info>
</DeviceInfo>
Информация об устройстве
@Root(name="DeviceInfo")
public class DeviceInfo {
// Mandatory
@Attribute(name="dpId")
public String DpId;
@Attribute(name="rdsId")
public String RdsId;
@Attribute(name="rdsVer")
public String RdsVer;
@Attribute(name="dc")
public String Dc;
@Attribute(name="mi")
public String Mi;
@Attribute(name="mc")
public String Mc;
@Element (name="additional_info")
public AdditionalInfo AdditionalInfo;
// Constructor
// ...
// Getter & Setter
// ...
public static class AdditionalInfo
{
@ElementList(name="Param",entry="Parameters", inline = true)
public List<DeviceInfoParam> Parameters;
AdditionalInfo()
{
}
}
public static class DeviceInfoParam
{
@Attribute(name="name")
public String Name;
@Attribute(name="value")
public String Value;
DeviceInfoParam()
{
}
}
}
Проблема: W/System.err: org.simpleframework.xml.core.ElementException: Элемент «Param» не имеет соответствия в классе x.x.entities.DeviceInfo$AdditionalInfo в строке 3
Вопрос: Чего не хватает в сущности (я не могу изменить XML!)? Я уже пробовал всевозможные варианты, включая элемент вместо списка элементов, добавление записи, встроенный и т. Д.
Parameters
в вашем xml? Я никогда не использовал эту библиотеку, но я бы сделал очевидную вещь... Удалите AdditionalInfo вообще, вместо этого я бы поместил список непосредственно в информацию об устройстве с entry=additional_info - person Selvin   schedule 13.03.2018