Я пытаюсь сериализовать ответ xml для модификации в объект, используя SimpleXML.
Однако возникает следующее исключение:
org.simpleframework.xml.core.ValueRequiredException: Невозможно удовлетворить @ org.simpleframework.xml.ElementList (data = false,пусто = true, запись =, inline = true, name = ALLFile, обязательно = true, type = void) в поле 'files' '
Пример ответа:
<LIST>
<ALLFile>
<File>
<NAME>SOME FILE NAME</NAME>
<FPATH>SOME FILE PATH</FPATH>
<SIZE>160053622</SIZE>
<TIMECODE>1299673239</TIMECODE>
<TIME>2018/11/23 14:04:46</TIME>
<ATTR>33</ATTR>
</File>
</ALLFile>
<ALLFile>
<File>
<NAME>SOME FILE NAME</NAME>
<FPATH>SOME FILE PATH</FPATH>
<SIZE>160053622</SIZE>
<TIMECODE>1299673559</TIMECODE>
<TIME>2018/11/23 14:14:46</TIME>
<ATTR>33</ATTR>
</File>
</ALLFile>
</LIST>
Объекты:
@Root(name = "LIST", strict = false)
data class ListResponse @JvmOverloads constructor(
@field:ElementList(name = "ALLFile", inline = true) var files: List<GetVideosResponse>? = null
)
@Root(strict = false, name = "File")
data class GetVideosResponse @JvmOverloads constructor(
@field:Element(name = "NAME", required = false) var name: String? = null,
@field:Element(name = "FPATH", required = false) var fPath: String? = null,
@field:Element(name = "SIZE", required = false) var size: Int? = null,
@field:Element(name = "TIMECODE", required = false) var timeCode: Long? = null,
@field:Element(name = "TIME", required = false) var time: String? = null,
@field:Element(name = "ATTR", required = false) var attr: Int? = null)
Я получаю 200 ответ от сервера, поэтому могу исключить мою логику запросакак проблема.Что заставляет меня верить, что проблема заключается в сериализации объектов, каких-либо идей?