带有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;