我构建了一个web应用程序,该应用程序生成对象的XML代码。令我惊讶的是,生成的xml完全正确,而且是我想要的格式。然而,我现在正在制作一个方法,它使用相同格式的xml,并将其返回到对象中。我如何测试它是否工作?
我曾尝试在chrome中使用REST扩展,该扩展发布与我的其他方法生成的XML完全相同的XML,但我得到了错误:"服务器拒绝了此请求,因为请求实体的格式不受请求方法的请求资源支持。"我也试过在代码中设置断点并以这种方式调试它,但我的断点从未达到。
@GET
@Produces(MediaType.TEXT_XML)
public week_program getXml() {
week_program weekProgram = new week_program();
return weekProgram;
}
@POST
@Consumes(MediaType.TEXT_XML)
public Response PostXml(week_program weekProgram) {
System.out.println(weekProgram);
return Response.status(Status.OK).entity(weekProgram).build();
}
如果它确实有效,我该如何修复它,甚至正确测试它?
我建议使用json,而不是XML和谷歌的Gson。
由于json输出通常小于XML(无脂肪)。
对象到JSON
DataObject obj = new DataObject();
Gson gson = new Gson();
String json_string = gson.toJson(obj);
JSON到对象
DataObject obj = gson.fromJson(json_string, DataObject.class);
这是一个教程。http://www.mkyong.com/java/how-do-convert-java-object-to-from-json-format-gson-api/