相关疑难解决方法(0)

我如何用JAXB编组java.util.List,如JAX-RS(CXF和Jersey)

似乎最新的JAX-RS可以处理将java.util.List作为XMLRootElement返回的方法,但普通的JAXB不能.我想模仿CXF和泽西岛正在做什么.

换句话说,我想列出一个名单,就像CXF和泽西岛一样.通常,如果您尝试使用JAXB封送列表,则会获得根元素异常.如何在不必制作包装物的情况下解决这个问题?

编辑:感谢您的答案,但我对@XmlElementWrapper非常熟悉,但这甚至不能模拟JAX-RS正在做的事情.

JAX-RS执行此操作:

@XmlRootElement(name="dog")
public class Dog {
    private String name;
    public String getName() { return this.name; }
    //Setter also
}
Run Code Online (Sandbox Code Playgroud)

现在如果我序列化狗列表:

serialize(List<Dog> dogs);
Run Code Online (Sandbox Code Playgroud)

XML应该是(JAX-RS所做的):

<dogs>
    <dog><name>Rascal</name></dog>
</dogs>
Run Code Online (Sandbox Code Playgroud)

所以你可以看到我不想为每个域对象创建一个包装器对象.

java jax-rs jaxb

13
推荐指数
2
解决办法
8775
查看次数

标签 统计

java ×1

jax-rs ×1

jaxb ×1