I have to parse xml response like this:
<?xml version="1.0" encoding="UTF-8"?>
<methodResponse>
<params>
<param>
<value>
<struct>
<member>
<name>RESULT_CODE</name>
<value>
<array>
<data>
<value>SUCCESS</value>
</data>
</array>
</value>
</member>
<member>
<name>MEMBER_KEY</name>
<value>de1cc72569709126282f76cca4c1111a3813c131</value>
</member>
<member>
<name>TEMP_HOLD_TIME</name>
<value>12</value>
</member>
</struct>
</value>
</param>
</params>
</methodResponse>
In my Android project, I use compile('com.squareup.retrofit2:converter-simplexml:2.0.0-beta4')
and make model like this
public class Response {
@Element
public Params params;
public static class Params {
@Element
public Param param;
}
public static class Param {
@Element
public Value value;
}
public static class Value {
@Element
public Struct struct;
}
public static class Struct {
@Element
public Member member;
@ElementList(required = false, inline = true)
public List<Member1> members;
}
public static class Member {
@Element
public String name;
@Element
public Value1 value;
}
public static class Value1 {
@Element
public Array array;
}
public static class Array {
@Element
public Data data;
}
public static class Data {
@Element
public String value;
}
public static class Member1 {
@Element
public String name;
@Element
public String value;
}
}
My request is success but when parsing data, I got the error
java.lang.RuntimeException: org.simpleframework.xml.core.PersistenceException: Element 'member' is already used with @org.simpleframework.xml.Element(data=false, name=, required=true, type=void) on field 'member' public Response$Member Response$Struct.member at line 2
I'm not sure about Struct class. How to make it properly? Thank you for any help