2011-12-06 13 views
1

私はMySQLの上でSpring Rooを使用しています。 Rooで生成されたJSONメソッドを使って日付を取得し、そのデータをブラウザ形式で変更し、Rooで生成されたJSONメソッドを使用して保存します。Spring Rooがjsonを保存する前に日付フォーマットを認識しない

私が出てくる日付形式は、標準のMySQLの日付形式であるyyyy-MM-ddです。ブラウザでカレンダーウィジェットを使用して、送信している日付が同じ形式であることを確認しています。

残念ながら、私のデータはエラーで失敗し、右...FromJson()方法を経由しない:私はこの問題は、それが文字列として出てくるということですが、それはする必要があるようにJPAが感じること

Parsing date 2007-12-12 was not recognized as a date format 

推測します更新するDateオブジェクトを生成します。

これについて私のコードを喜んで表示しますが、Rooが私のために構築したものではありません。

「日付形式として認識されています」と言われていることがあります。それは私がそれが知っている日付の形式を変更することができるどこかにありますか?

EDIT:JSONDeserializerは、それが扱っているものを知っているクラスと、そのクラスのすべての日付のフォーマッターを構築

public static Lease fromJsonToLease(String json) { 
    return new JSONDeserializer<Lease>() 
      .use(null, Lease.class) 
      .use(Date.class, new DateFormatter("yyyy-MM-dd")) 
      .deserialize(json); 
} 

その方法:@のnowaqの助けを借りて、ここでの究極の答えです。ウィキッド!

答えて

0

あなたの質問はこの1つに非常に関連しています:Spring-roo REST JSON controllers mangle date fields JSONデシリアライザで正しいDateTrasformerを使用していることを確認してください。例えば。

+0

私は2つの '.use'呼び出しが必要でした.1つは作業しているクラスを定義し、もう1つはそのクラスの日付のためのdatetransformerを設定することでした。ありがとう! –

+0

@ DanRay新しいDateFormatter( "yyyy-MM-dd")を追加して解決していますが、DateFormaterが機能していないようです。 ObjectFactoryにキャストする必要がありますが、この型にキャストすることはできません。 – Rami

関連する問題