私の spring3.1 mvc サーバーは add によって正しい json 結果を返すことができますが、Spring@ResponseBody
設定ファイルに問題はありません。含まれる servlet.xml
<mvc:annotation-driven/>
ジャクソンジャーをクラスパスに入れました。
また、私の html ファイルでは、.ajaxSetup() メソッドで contentType を 'application/json" に設定しています。また、投稿ヘッダーが Firebug で正しいことがわかります。
また、JSON.stringify メソッドを呼び出すために json2.js をインクルードしようとしました。
json 形式のサンプル:
{"link":"http:xxxxx","ticker":"xxxxx"}
responseBody クラスはドキュメントです。
public class Document implements Serializable{
public String getLink(){...}
public String setLink(String link){...}
public String getTicker(){...}
public String setTicker(String ticker){...}
}
コントローラーコード:
public class LoadFile {
@RequestMapping(value="/loadFile",method=RequestMethod.POST)
public @ResponseBody Document loadFile(@RequestBody Document document){
...
}
}
HTML コード:
$(function() {
$.ajaxSetup({
contentType:"application/json;charset=utf-8"
});
$.post( url, { link: link, ticker:ticker },
function( data ) {
....
},"json"
);
}
ドキュメント クラスを追加すると json オブジェクトとして返すことができます@ResponseBody
が、 として@RequestBody
返すと、サーバーは 400 エラーを返します。何が起こるかわからない。