0

我正在开发一个更新表格。对于此表单,我正在加载一个屏幕,该屏幕首先显示所有现有详细信息并为用户提供编辑选项。现在我有一个名为 createdOnTs 的字段,它是一个我不希望用户能够更新的日期字段。所以我在我的表单中添加了一个弹簧表单隐藏元素。

<td><form:hidden path="createdOnTs"/></td>

在使用 firbug 检查值时,该字段确实具有从 DB 获取的值。但是当用户提交更新按钮和在其中调用的 Spring 控制器时,该值将变为 null。如何配置 spring MVC 以映射现有的日期隐藏值?

4

2 回答 2

1

我在将字符串日期转换为实际日期并将其分配给模型时遇到了同样的问题。在您的情况下,Spring 不会为您执行此操作,在您的模型类中,您已将 String 日期写入 Util Date 转换 util 方法并更改路径以反映该方法。

这就是我的代码中的内容。

    <input name ="stringDate" value="01/01/2010 10:10:10" style="display:none";> 

我的模型中有这种方法。

   public void setStringDate(String stringDate){
    //convert stringDate to Date. 
    Date date = convertToUtilDate(stringDate);
  }
于 2016-10-04T18:04:44.300 回答
0

让 spring binder 知道你希望它绑定什么类类型。这样你就不会TypeMismatchException通过添加class = "date"

<td><form:hidden path = "createdOnTs" class = "date"/></td>
于 2017-08-07T18:55:13.333 回答