在@rootelement的球衣中形成XMl

时间:2013-10-01 11:15:49

标签: java xml rest jaxb jersey

我正在使用泽西RESt JAX-RS开发休息网络服务。我想以下列格式返回xml -

<RootChild>
<Child1>
<HFact>
<a></a>
<b></b>
<c></c>
<d></d>
</HFact>

<PFact>
<a></a>
<b></b>
<c></c>
<d></d>
</PFact>
</Child1>
....
</RootChild>

我在每个POJO类中使用@ RootElement。但xml树不会来。

1 个答案:

答案 0 :(得分:0)

对于使用XML生成调用响应的Jersey RESTful Web服务,您需要声明调用(实现调用的方法)@Produces({"application/xml"}),这应该足够了,只要您正确配置了JAXB (您引用的POJO是API调用的响应,您在调用中构建响应)。

泽西宣言的例子:

@Path("/resource")
@Produces({ "application/xml"})
public class ResourceAPI{

    @GET
    @Path("/childs")
    @Produces("application/xml")
    public GetChildsResp
            getChilds(){

        GetChildsResp response = new GetChildsResp();

        // build and populate response with all the Childs (from your DB)

        return response;

    }

}