0

現在、RestEasy(2.3.6) と Jackson(1.9.9) を使用しており、JSON のハイジャックを防ぐために、JSON 配列の前に「{} &&」を付ける必要があります。

私はジャクソンを初めて使用し、このようなものをどこに挿入すればよいかを理解するのに非常に苦労しています. このようなことを常に実現するためにどこに挿入すればよいかさえわかりません。さらに一歩進んで、通常のオブジェクトではなく JSON 配列を含む戻り値のプレフィックスのみを指定できるようにしたいと考えています。

メソッドをサブクラス化してオーバーライドし、そのクラスを何らかの方法で登録する必要があるクラスがどこかにあると思います。誰かがこのようなことをしたことがありますか?

4

1 に答える 1

0

Jukka、あなたがリンクした質問は私を解決に導きました. を拡張JacksonJsonProviderし、writeTo()メソッドをオーバーライドしました。そこにはいくつかの条件がありjg.writeRaw("{}&&");、値を書き込む各場所の前に追加できました。また、Spring を使用している@Componentため、クラスが見つかるようにクラスに注釈を付ける必要がありました。

また、独自のJsonProviderサブクラスを作成する際のもう 1 つの落とし穴は、残りのメソッドに必要なもの@Produces('application/json')です (いずれにせよ、常にこれらを明示する必要があります)。そうしないと、デフォルトJsonProviderが使用されます。

于 2013-06-14T12:23:30.503 に答える