我正在尝试使用Web服务POST在我的数据库上保存数据,它将序列化HTML表单以保存对象。其余的客户端firefox说:
“服务器拒绝了此请求,因为请求的实体所采用的方法所请求的资源不支持该格式”
eclipse控制台显示消息:
org.jasig.cas.client.util.CommonUtils - 在LogoutRequest的POST HttpServletRequest上调用safeGetParameter。无法安全完成检查。恢复此参数的标准行为
我理解我要保存的对象无效,但我不知道问题是什么。
@RequestMapping(value="/solicitudCita", method = RequestMethod.POST)
public @ResponseBody String putSolicitud(@ModelAttribute("Solicitud") Solicitud solicitud) throws Exception{
System.out.println(solicitud.toString());
solicitudCitaAppMService.createOrUpdate(solicitud);
String solicitudAdded = "Solicitud de cita -> {" + solicitud.toString() + "} añadida";
System.out.println(solicitud);
return solicitudAdded;
}
请帮帮我
由于
答案 0 :(得分:0)
如果要以RESTful方式调用此控制器,则必须将solicitud参数注释为@RequestBody。其次,你必须在类路径中拥有Jackson库,以便Spring可以将它们拾取并用它们来解组对象。
如果您使用Maven,请使用以下依赖项:
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>1.9.12</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.12</version>
</dependency>
顺便说一句,你为什么要序列化HTML表单并将其发送出去?我建议你使用一个REST客户端,例如this one,它可以在Chrome WebStore中找到。