<form th:action="@{home}" method="get">
<div class="form-group">
<label>from date:</label> <input type="date" pattern="yyyy-MM-dd" name="d1" th:value="${d1}" />
<label>to date:</label> <input type="date" pattern="yyyy-MM-dd" name="d2" th:value="${d2}" />
<button type="submit">Trouver</button>
</div>
</form>
必要なタイプにjava.lang.String型の値を変換できませんでした:これは、コントローラコード部であるjava.util.Date
:
@RequestParam(name = "d1", defaultValue = "1900-01-01") @DateTimeFormat(pattern = "yyyy-MM-dd") Date d1, @RequestParam(name = "d2", defaultValue = "2200-01-01") @DateTimeFormat(pattern = "yyyy-MM-dd") Date d2){
Imがこのメッセージを取得します予期しないエラーがありました(type = Bad Request、status = 400)。 [java.lang.String]型の値を必須型に変換できませんでした [java.util.Date];ネストされた例外は org.springframework.core.convert.ConversionFailedExceptionです:タイプ[java.lang.Stringで] を入力するから の変換に失敗しました[@ org.springframework.web.bind.annotation.RequestParam @ org.springframework.format .annotation.DateTimeFormat java.util.Date] 値 'Wed Jun 08 00:00:00 WET 2016';あなたが期待するよう、あなたのHTML入力要素に与えるパターンが動作しない試みが値 に失敗しましたパース[水曜日6月8日0時00分00秒2016 WET]
パターンは彼の問題ではありません。エラーメッセージを読むと、java.lang.String型をjava.util.Dateに変換できないことが示されます。代わりに、SimpleDateFormatなどを使用して日付を解析する必要があります。 –