Java:Jersey(JAX-RS)和带注释的JAXB_FORMATTED_OUTPUT?

时间:2011-07-19 08:19:34

标签: java annotations jaxb jersey jax-rs

目前我的Jersey(JAX-RS)Webservice在我的Webservice方法中返回一个带有简单@Produces("text/xml")的JAXB注释对象。不幸的是,输出看起来相当混乱,因为它没有使用中断和空格格式化。

是否有我可以使用的注释,如RESTeasy的@Formatted

如何实施marshaller,以及在哪里?

2 个答案:

答案 0 :(得分:4)

在Jersey中,您可以向其servlet添加init参数:

<init-param>
    <param-name>com.sun.jersey.config.feature.Formatted</param-name>
    <param-value>true</param-value>
</init-param>

答案 1 :(得分:1)

泽西岛可能有这样的注释,但如果没有,你可以利用MessageBodyWriter的JAX-RS概念并直接利用JAXB Marshaller。下面是我给出的答案的链接,其中MessageBodyReader被用来在JAXB Unmarshaller上设置架构验证: