JavaでJSONシリアライズされた日付情報をjsで取得する

JavaJSONシリアライズされた日付情報をjsで取得するとき、どのようなことが必要か確認しました。
Javajava.util.DateクラスもJavaScriptのDateコンストラクタから生成されたオブジェクトも1、970年1月1日0時0分0秒からのミリ秒で日付を管理してます。
Date型のプロパティを持つSlim3のモデルをjson-libでシリアライズすると、Dateもjsonに展開され、timeプロパティでミリ秒を取得できます。これをjs側でDateコンストラクタの引数に渡せばよさそうです。

JSONを返すSlim3のコントローラ

public class IndexController extends Controller {

	@Override
	protected Navigation run() throws Exception {
		Slim3Model model2 = new Slim3Model();
		model2.setDate(new Date());
		JSON json = JSONSerializer.toJSON(model2);
		response.setCharacterEncoding("UTF-8");
		json.write(response.getWriter());
		response.flushBuffer();
		return null;
	}

}
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
alert("hoge");
$.getJSON("./index", function(data){
	alert(new Date(data.date.time).toLocaleString())
});
</script>

上記を実行すると、アラートで実行した時刻のJST表現が取得できました。

Wed Sep 08 2010 19:40:40 GMT+0900 (JST)