4
我正在和Jersey一起玩Grizzly,希望能夠使用和生成JSON,但是我在服務器中獲取500請求和媒體類型不支持POST 我的服務器代碼是使用球衣和灰熊啓用JSON
org.glassfish.jersey.server.ResourceConfig rc = new ResourceConfig();
rc.packages("RestServer.controllers");
final Map<String, Object> initParams = new HashMap<String, Object>();
initParams.put("com.sun.jersey.config.property.packages", "rest");
initParams.put("com.sun.jersey.api.json.POJOMappingFeature", "true");
rc.addProperties(initParams);
webServer = GrizzlyHttpServerFactory.createHttpServer(uri, rc, false);
我的POJO是:
@XmlRootElement
public class Dummy {
private int id;
private String name;
public Dummy(int id, String name) {
this.id = id;
this.name = name;
}
@XmlElement(name="id")
public int getId() {
return id;
}
@XmlElement(name = "name")
public String getName() {
return name;
}
}
和控制器
@Path("/Dummies")
public class DummyController {
@GET
@Produces(MediaType.APPLICATION_JSON)
public Response get() {
System.out.println("Get");
return Response.status(Status.OK)
.entity(new Dummy(-1, "hello"))
.build();
}
@POST
@Consumes(MediaType.APPLICATION_JSON)
public Response AddDummy(Dummy dummy) {
return Response.status(Status.CREATED).entity(dummy).build();
}
}
天知道爲什麼澤西不斷改變他們的方法名稱,爲什麼這不被接受爲最佳答案...就像一個魅力。謝謝。 – thermz 2015-04-28 13:21:53