Не удалось проанализировать список элементов с атрибутами

У меня есть объект Links, который имеет член List, в то время как Link имеет только атрибуты, но при разборе списка что-то не так - он создан пустым.
В тесте ниже links.getLinks() возвращает пустой список Есть идеи?
Пример XML:

<links>
<link x="1" y="2" />
<link x="3" y="4" />
</links>

Ява

@JacksonXmlRootElement(localName="links")
public class Links extends BaseAmebaElement {

@JacksonXmlProperty(localName="link")
//@JacksonXmlElementWrapper(localName="link")
private Collection<Link> links;

public Collection<Link> getLinks() {
    return links;
}

public void setLinks(Collection<Link> links) {
    this.links = links;
}
}

...

@JacksonXmlRootElement(localName="link")
public class Link {

@JacksonXmlProperty(localName="x", isAttribute=true)
private String href;

@JacksonXmlProperty(localName="y", isAttribute=true)
private String rel;

...

    XmlMapper  xmlMapper = new XmlMapper ();
    try {
        Links links = xmlMapper.readValue(input, Links.class);
        assertNotNull(links);
        assertNotNull(links.getLinks());
        assertEquals(2, links.getLinks().size());
    } catch (Throwable e) {
        fail(e.getMessage());
    }

1 ответ

Я мог получить результат после некоторых изменений. Тем не менее, он может получить первый ряд (это ноль). И я не знаю почему.

@JacksonXmlElementWrapper(useWrapping=false)
@JacksonXmlProperty(localName="link")
private Collection<Link> links;

Обновлено: это должно быть ошибкой в ​​версии 2.1.4. Я только что попробовал мастер, это отлично работает.

Другие вопросы по тегам