带有Spring MVC的jQuery datepicker-从视图传递日期到控制器发送null
问题内容:
提交表单后,我看到所有值都正确地传递到了控制器,除了以null传递的日期(表单中的日期选择在输入字段中输入了正确的日期)我尝试添加但没有帮助。我还尝试删除“路径”,并在“”中将其替换为“名称”,但是它抛出错误,提示“路径”属性丢失。我尝试以下,但没有luck-
1. 在弹簧WebMVC应用程序的日期值被接收作为NULL在控制器从日期选择器读jsp页面上后
jQuery的: $(document).ready(function() { $("#datepicker").datepicker({dateFormat:"yy-mm-dd"}); });
JSP:
<div class="plLabelSearch" id="hiddenField">Due Date:</div>
<div class="plinput"><form:input type="text" id="datepicker" path="dueDate" placeholder="yyyy-mm-dd"/></div>
模型:
@Column(name = "DUE_DATE")
@DateTimeFormat(pattern = "yyyy/mm/dd")
private Date dueDate;
控制器:
@RequestMapping(value="/lock", method = RequestMethod.POST)
public @ResponseBody Status lockDevice(@ModelAttribute("adminTransaction") @Validated AdminTransaction adminTransaction, BindingResult result, Model model, Locale locale,Map<String, Object> map, HttpServletRequest request) {
try {
/*.......CODE.........*/
adminTransactionDO.setDueDate(adminTransaction.getDueDate());
/*.......CODE.........*/
}
return new Status("success", "Transaction inserted Successfully !");
} catch (Exception e) {
return new Status("error", e.toString());
}
}
问题答案:
看起来像您的:
@Column(name = "DUE_DATE")
@DateTimeFormat(pattern = "yyyy/mm/dd")
private Date dueDate;
是问题。Spring无法将其转换为Date。
试一试
private String dueDate;