JAXB / JAX-RS集合绑定 - 无需注释

时间:2014-07-08 22:39:33

标签: java xml web-services rest jaxb

我正在研究接收XML数据的JAX-RS WebService,例如:

<movie>
  <id>ID</id>
  <genres>
    <genre>horror</genre>
    <genre>scifi</genre>
  </genres>
</movie>

这需要绑定到一个我无法注释的POJO(来自一个单独的jar)看起来像这样:

public class Movie {
    private String id;
    private List<Genre> genres;
    // ... usual getter/setters
}

我的JAX-RS入口点:

@PUT
@Path("/movies")
@Consumes("application/xml")
@Produces("text/plain")
public Response put(JAXBElement<Movie> movieWrapper) {
    Movie movie = movieWrapper.getValue();
    //...;
}

成功处理XML数据,但只能正确设置'id'属性。字段'genres'是'null'。

如何让JAXB正确处理集合的内容?

注意:关于如何通过注释实现这一点的博客/文章很多,但遗憾的是在这种情况下,我无法改变POJO本身。

0 个答案:

没有答案