需要消费以下的REST服务。Jersy Client
@POST
@Produces("application/vnd.app.mail-service+json")
@Consumes("application/vnd.app.mail-service+json")
public TempResponse submit(TempRequest request) {
}
这里的temprequest是jaxb对象。
从JavaScript消耗服务。将Accept-type设置为"应用程序/vnd.app.mail-service json",并发送JSON请求
{
"TempRequest" :{
"TempR1" : {
"id" : "1212",
"name" : "app",
}
}
}
提交请求时,服务申请中的接收请求正文是空的,如果我尝试使用" xml"中的" xml",以及生产和更改内容类型,请求主体并非空。
使用JACSON-CORE和ASL的Spring 4.3.7使用Jersy-cleint和Jax-Rs使用JAX-RS-1.19.3
我不确定为什么要使用application/vnd.app.mail-service+json
而不是application/json
。
相同的需要更改为
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
我希望,您对TempRequest
类也有类似的变化,即Jaxb类。
@XmlRootElement(name="TempRequest")
@XmlAccessorType(XmlAccessType.FIELD)
public class TempRequest {
@XmlElement(name="TempR1")
private TempR1 temp;
public TempRequest() {}
// Getter and setter methods
// ...
}