无法解析具有属性的元素列表

uri*_*rir 4 java xml jackson fasterxml

我有对象链接有List的成员,而链接只有属性但解析列表有错误 - 它被创建为空.
在下面的测试中links.getLinks()返回空列表.有任何想法吗?
XML示例:

<links>
<link x="1" y="2" />
<link x="3" y="4" />
</links>
Run Code Online (Sandbox Code Playgroud)

Java

@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;
}
}
Run Code Online (Sandbox Code Playgroud)

...

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

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

@JacksonXmlProperty(localName="y", isAttribute=true)
private String rel;
Run Code Online (Sandbox Code Playgroud)

...

    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());
    }
Run Code Online (Sandbox Code Playgroud)

lon*_*hua 5

一些变化后我可以得到结果.但是,它可以获得第一行(它为空).我不知道为什么.

@JacksonXmlElementWrapper(useWrapping=false)
@JacksonXmlProperty(localName="link")
private Collection<Link> links;
Run Code Online (Sandbox Code Playgroud)

更新:这应该是2.1.4版中的错误.我刚试过大师,这很好用.