2016-06-27 31 views
0

play.libs.JsonObjectMapperを設定しようとしました。私はドキュメンテーションに従ってきましたが、MapperLoaderは無視されるようです。Play 2.5のJsonConverterの日付形式を変更してください

これは私が(ドキュメントに基づいて)何をすべきかです:

  • 明示的application.confでローダーをロードCustomMapperLoader public class JsonMapperLoader extends GuiceApplicationLoader { @Override public GuiceApplicationBuilder builder(final Context context) { ObjectMapper mapper = Json.newDefaultMapper() .setDateFormat(new SimpleDateFormat(Constants.ISO8601_DATE_FORMAT)); Json.setObjectMapper(mapper); return super.builder(context); } }

  • を作成します。

play.application.loader = "JsonMapperLoader"

日付をシリアル化すると、指定された形式ではなくタイムスタンプが表示されます。

私はこれにはいくつかの回避策があります:私はplay.core.ObjectMapperProviderを無効にして、私のCustomObjectMapperProviderを有効 ApplicationController

  • の作成中に、オブジェクトマッパーを設定

    1. を。

    この問題の代替方法はありますか?

    おかげ&よろしく、

  • 答えて

    0

    私は方法は、マニュアル(カスタムApplicationLoader付き)で提案しようとしたことはありません。私は別の手法を使用します。要するに、ObjectMapperを構成するクラスがあります。クラスはそれをSingletonとしてModuleに挿入します。

    完全なコード例hereが表示されます。

    関連する問題