将对象发送到restful service

时间:2011-10-03 12:11:34

标签: java-ee rest jboss ejb-3.0 resteasy

我正在使用restEasy(jboss的Restful实现)ejb3.0,Jboss5.1.1 AS

我做了接受简单对象的宁静服务。

这是在服务器端:

@POST
@Path("testObjects")
@Consumes("application/xml")
@Produces("text/plain")
public String testObjects(GrandSun sun)
{
    System.out.println(sun.toString());
    return "success";
}

这是我在服务器端声明的对象:

package com.mirs.wma.web.data;
import javax.xml.bind.annotation.XmlRootElement;


@XmlRootElement
public class GrandSun
{
    int m = 1;
    int g = 2;

}

我通过发送xml字符串的restfull客户端测试它,它工作正常。

<?xml version="1.0" encoding="UTF-8"?> 
<grandSun>
<m>111</m>
<g>22</g>
</grandSun>

我正在寻找的是一个安静的客户端,它可以发送整个对象(按原样),而无需我手动转换为xml格式。

有没有选择通过注释来做到这一点?

我只需要在客户端注释对象并将其原样发送给restful服务?

感谢, 射线。

感谢, 射线。

2 个答案:

答案 0 :(得分:0)

大多数IDE都可以从WSDL生成WebService客户端存根。这将提供将对象自动转换为XML请求并反序列化结果所需的基础结构。

如果失败,请查看wsdl2java。它会为你生成存根。

答案 1 :(得分:0)

使用RestEasy own client,以及JAXB marshaller(我更喜欢杰克逊,但我认为放弃了RestEasy)。虽然在服务器端POJO是未编组的,但客户端负责编组POJO。

希望这会给你一些提示。