2016-12-20 7 views
0

@RequestBodyアノテーションを使用して、POJOにリクエスト本文を作成するようSpringのマップを作成しようとしています。 org.[email protected]4c3bfe22@RequestBody inteceptorで入力ストリームを読み込んだ後

私はすでに上のgetInputStreamと呼ばれてきたように:

は私が

」必要なリクエストボディのコンテンツが不足しているエラーを取得しています

私はHttpServletRequestWrapperを拡張し、getInputStreamメソッドをオーバーライドして、String cacからデータを取得するServletInputStreamを返すようにしました。彼は元の読んで作成された彼。

デバッグ時に、私はインターセプタで好きなだけgetInputStreamを何度も呼び出すことができますが、SpringはまだPOJOをマップできません。もともとinteceptorで本体から読み込んだコード行をコメントアウトすると、SpringはPOJOをうまくマッピングできます。

SpringがPOJOにデータをマップする方法について私はあまり明確ではないですが、何か不足していますか?

ありがとう

+0

コードを表示してください。いくつかのコード文のようなものがありません。 – viruskimera

+1

HttpServletRequestWrapperをフィルタまたはインターセプタ内に配置していますか? –

+0

@KlausGroenbaekありがとう、私はInterceptorの中からやっていましたが、あなたのコメントの後、私はフィルタ内でそれを行う必要があることを確認しました。 – FMC

答えて

0

フィルタ対インターセプタに関するKlausのコメントの後で問題を解決しました。

この問題を発見した他の人は、インターセプタではなく、フィルタからのみ行うことができます。

関連する問題