2013-10-01 77 views
1

我使用球衣RESt JAX-RS开发其他Web服务。我想返回以下格式的xml-XMl与@rootelement形成球衣

<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树不会来。

+0

什么是您的JAX-RS的方法,对象模型,和目前的XML结果是什么样子? –

+1

@BlaiseDoughan对不起,我在Pojo Class的正确配置中犯了一些错误。由于这个原因,我没有得到xml/json。现在我自己解决这个问题。非常感谢您的关心。 – Kumar

回答

0

对于泽西岛REST风格的Web服务来生成XML调用的响应,您需要声明该调用(实现调用的方法)@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; 

    } 

} 
+0

我想要这种格式的XML,我把@RootElement放在每个POJO类中。它没有显示。 – Kumar

+0

我已经延长我的回应...添加POJO声明,以便我们可以进一步帮助您。 – emgsilva