Wie analysiere ich XML mit zwei Elementen mit demselben Namen?

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Wie analysiere ich XML mit zwei Elementen mit demselben Namen?

by Anonymous » 24 Dec 2024, 08:48

Ich muss dieses von Retrofit zurückgegebene XML analysieren:

1

1a


1b



Ich verwende Jackson:
Retrofit.Builder()
.baseUrl("https://www.web.com/")
.addConverterFactory(JacksonConverterFactory.create(XmlMapper()
.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)
.registerKotlinModule()))
.build().create(DataApiService::class.java)

Ich habe es mit diesen Datenklassen für das Objekt versucht:
data class Data(
val id: String,
@JacksonXmlProperty(localName = "subdata")
val subdata1: SubData,
@JacksonXmlProperty(localName = "subdata")
val subdata2: SubData
)

data class SubData(
val id: String,
)

Aber es funktioniert nicht:
IllegalArgumentException: Conflicting getter definitions for property "subdata": com.data.model.Data#getSubdata1() vs com.data.model.Data#getSubdata2()

Top