Я потратил некоторое время, пытаясь заставить это работать, но мне немного повезло.
У меня есть следующий XML:
<message>
<buckets>
<bucket>
<channels>
<channel>Test A</channel>
<channel>Test B</channel>
</channels>
<messageText>This is sample text</messageText>
</bucket>
<bucket>
....
</bucket>
</buckets>
<userId>10</userId>
</message>
Я пытаюсь сопоставить это с POJO, используя аннотации JAXB, но у меня возникли проблемы.
Мой класс выглядит следующим образом:
@XmlRootElement(name="message")
public class MessageRS {
public static class Bucket {
private List<String>channels;
private String text;
private Bucket() {}
public List<String> getChannels() { .... }
public void setChannels(List<String> channels) { .... }
public String getText() { .... }
public void setText(String text) { .... }
}
private List<Bucket> buckets;
private Long userId;
private MessageRS() { }
public List<Bucket getBuckets() { .... }
public void setBuckets(List<Bucket> buckets) { .... }
public long geUserId() { .... }
public void setUserId(long UserId { .... }
}
К сожалению, похоже, это не работает правильно. Как бы я аннотировал это, чтобы правильно отобразить XML на этот объект (желаемое отображение должно быть очевидным)?
Здесь ничего не установлено - я могу свободно изменять структуры классов XML и Java на этом этапе.