playframework中的日期2.0-java在表单中给出了无效值

use*_*800 2 java forms date playframework-2.0

我有一个表单,我定义:

@Required
@Formats.DateTime(pattern="dd/MM/yyyy")
    public Date mDate;
Run Code Online (Sandbox Code Playgroud)

现在我的模板我有:

@helper.inputDate(
                myForm("mDate")
        )
Run Code Online (Sandbox Code Playgroud)

但是当我提交表单时,我得到一个错误作为无效值.

请告知如何克服此错误.

谢谢aj

Bry*_*Kou 5

这真的很晚了,但希望这会对那些偶然发现这个问题的人有所帮助.

如果您进入chrome dev工具或firebug,当显示错误消息时,您会看到类似的内容:

<input type="date" id="start" name="start" value="2013-12-31">
Run Code Online (Sandbox Code Playgroud)

这意味着发送回服务器的格式是yyyy-MM-dd而不是dd/MM/yyyy.

将模型字段装饰器更改为:

@Required
@Formats.DateTime(pattern = "yyyy-MM-dd")
    public Date mDate;
Run Code Online (Sandbox Code Playgroud)