我已经使用 jersey 有一段时间了,我刚刚实现了一个 POST 方法,它获取一个 Json 作为参数。但是我希望它像这样运行:
// The json class to be used and returned
@XmlRootElement
public class Container
{
private boolean isOk;
private String message;
public Container() {}
public boolean getOk()
{
return this.isOk;
}
public void setOk(boolean isOk)
{
this.isOk = isOk;
}
}
// A service
@Path("json/test")
public class TestService
{
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Container readAndReturnMessage(Container receivedJson)
{
doSomething(receivedJson.getMessage());
return receivedJson;
}
}
不幸的是,这不起作用。所有的 Container 变量都是空的,即使传递给服务的原始 json 没有任何问题。这里的方法是什么,我是否需要将 String 作为参数并使用 Jackson/Gson 反序列化?