我发现自己处于这样一种情况:我需要在我的服务器上使用POST获取一些数据并用它做一些简单的事情。但当我尝试使用www.hurl.it网站进行测试时,它一直在说415不支持的媒体类型。
这是我发送的json:
{
"pictures": {
"picture": [
{
"id": "1",
"name": "10_aut_linen_male_less_student_work_yellow_n_cold.png"
},
{
"id": "2",
"name": "10_aut_linen_male_less_student_work_yellow_n_mild.png"
},
{
"id": "3",
"name": "10_aut_linen_male_less_student_work_yellow_n_hot.png"
}
]
}
}
这是模型类:
package com.models.sm7;
import java.util.ArrayList;
import java.util.List;
public class Sm7Pictures {
private Pictures pictures;
public Pictures getPictures() {
return pictures;
}
public void setPictures(Pictures pictures) {
this.pictures = pictures;
}
public class Pictures {
private List<Picture> picture = new ArrayList<Picture>();
public List<Picture> getPicture() {
return picture;
}
public void setPicture(List<Picture> picture) {
this.picture = picture;
}
}
public class Picture {
private String id;
private String name;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
}
这是我的服务类:
@Path("sm7Service")
public class Sm7Service {
Sm7DAO sm7DAO = new Sm7DAO();
@GET
@Path("/testSm7")
@Produces(MediaType.TEXT_PLAIN)
public String testSm (){
return "Hello";}
@POST
@Path("/checkPictures")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.TEXT_PLAIN)
public String getPictures(Sm7Pictures picture){
System.out.println("pokrenuto");
return "Hello";}
}
DAO课程是我将完成所有逻辑的地方,但是对于测试用语我只是简单地说文字......我真的很抱怨这个:S因为它很简单但我无法得到它工作。我的赌注是它与模型类有关?请帮忙!
答案 0 :(得分:1)
解决了问题,必须将poll()
置于{}
内@Consumes(MediaType.APPLICATION_JSON)
。