I am trying to map my XML string to POJO classes, it works fine for simple String and int but gives unrecognized field error in case of a list.
Sample Message Unrecognized field "Events" (class com.example.fixinitiator.conversationSchema.Chat), not marked as ignorable
Here is my sample xml
<Chats>
<Chat>
<Identifier>11056</Identifier>
<Topic/>
<Disclaimer/>
<Events>
<Event>
<Type>Join</Type>
<User>GEHO</User>
<UTCTime>2022-04-13T10:10:27.985Z</UTCTime>
</Event>
<Event>
<Type>Join</Type>
<User>ZHOU</User>
<UTCTime>2022-04-13T10:10:27.985Z</UTCTime>
</Event>
<Event>
<Type>Send</Type>
<User>ZHOU</User>
<UTCTime>2022-04-13T10:10:32.063Z</UTCTime>
<Author>CounterpartyTypeTheirParty</Author>
<Message>
<MessageID>0</MessageID>
<Content>FX RECFM</Content>
<HasHighLight>false</HasHighLight>
<HasDeal>false</HasDeal>
<SystemText>NONE</SystemText>
<TextType>Online</TextType>
</Message>
</Event>
<Event>
<Type>Send</Type>
<User>GEHO</User>
<UTCTime>2022-04-13T10:10:38.987Z</UTCTime>
<Author>CounterpartyTypeOurParty</Author>
<Message>
<MessageID>1</MessageID>
<Content>GEORGE> YES FRIENDS?</Content>
<HasHighLight>false</HasHighLight>
<HasDeal>false</HasDeal>
<SystemText>NONE</SystemText>
<TextType>Online</TextType>
</Message>
</Event>
<Event>
<Type>Send</Type>
<User>ZHOU</User>
<UTCTime>2022-04-13T10:10:51.894Z</UTCTime>
<Author>CounterpartyTypeTheirParty</Author>
<Message>
<MessageID>2</MessageID>
<Content>HIHI FRD, SORRY FOR THE TYPO ERROR</Content>
<HasHighLight>false</HasHighLight>
<HasDeal>false</HasDeal>
<SystemText>NONE</SystemText>
<TextType>Online</TextType>
</Message>
</Event>
<Event>
<Type>Send</Type>
<User>ZHOU</User>
<UTCTime>2022-04-13T10:11:04.379Z</UTCTime>
<Author>CounterpartyTypeTheirParty</Author>
<Message>
<MessageID>3</MessageID>
<Content>MY AED TO CENTRAL OF UAE </Content>
<HasHighLight>false</HasHighLight>
<HasDeal>false</HasDeal>
<SystemText>NONE</SystemText>
<TextType>Online</TextType>
</Message>
</Event>
<Event>
<Type>Send</Type>
<User>ZHOU</User>
<UTCTime>2022-04-13T10:11:04.520Z</UTCTime>
<Author>CounterpartyTypeTheirParty</Author>
<Message>
<MessageID>4</MessageID>
<Content>(CBAUAEAAXXX),AE810010001000062101001 </Content>
<HasHighLight>false</HasHighLight>
<HasDeal>false</HasDeal>
<SystemText>NONE</SystemText>
<TextType>Online</TextType>
</Message>
</Event>
<Event>
<Type>Send</Type>
<User>ZHOU</User>
<UTCTime>2022-04-13T10:11:13.301Z</UTCTime>
<Author>CounterpartyTypeTheirParty</Author>
<Message>
<MessageID>5</MessageID>
<Content>FYI</Content>
<HasHighLight>false</HasHighLight>
<HasDeal>false</HasDeal>
<SystemText>NONE</SystemText>
<TextType>Online</TextType>
</Message>
</Event>
<Event>
<Type>Send</Type>
<User>ZHOU</User>
<UTCTime>2022-04-13T10:11:23.568Z</UTCTime>
<Author>CounterpartyTypeTheirParty</Author>
<Message>
<MessageID>6</MessageID>
<Content>OTHER DETAILS REMAIN THE SAME</Content>
<HasHighLight>false</HasHighLight>
<HasDeal>false</HasDeal>
<SystemText>NONE</SystemText>
<TextType>Online</TextType>
</Message>
</Event>
</Events>
</Chat>
</Chats>
Here is my POJO classes for this
@Getter
@Setter
@JsonIgnoreProperties(ignoreUnknown = true)
public class Chats {
public Chat Chat;
public Chats(@JsonProperty("Chats") com.example.fixinitiator.conversationSchema.Chat chat) {
Chat = chat;
}
}
@Getter
@Setter
public class Chat {
public int Identifier;
public String Topic;
public String Disclaimer;
@XmlElement(name = "Participants")
public Participants Participants;
private Events Events;
}
@Getter
@Setter
@JsonIgnoreProperties(ignoreUnknown = true)
public class Events {
public List<Event> Event;
}
@Setter
@Getter
@JsonIgnoreProperties(ignoreUnknown = true)
public class Event {
public String Type;
public String User;
public Date UTCTime;
public String Author;
public Message Message;
}