0

jQUERY AJAX POST を使用してスプリング コントローラーをヒットできません。JSON 応答を使用して文字列のリストを取得しようとしています。

ドロップダウンが選択されたときに呼び出される私のjavascript関数:

function doAjaxPost() {  

  var name = $('#selected_report').val();

  alert("POST Ajax request initiating.... name : " + name);

  $.ajax({  
    type: "POST",  
    url: "/NewILR/interfaceReportsSearch/findEntityTypes", 
    contentType: "application/json",
    data: JSON.stringify({selectedReport:name}),  
    dataType: "text",
    success: function(response){
      if(response.status == "SUCCESS"){
          alert("SUCCESS");
      }else{
            alert("FAILURE");
      }       
    },  
    error: function(e){  
      alert('Error: ' + e);  
    }  
  });  
} 

上記のアラートのうち 2 つが表示されます (POST Ajax request initiating... および 'Error: ' + e))。

AJAX リクエストを処理する Spring コントローラー:

@RequestMapping (value="/interfaceReportsSearch/findEntityTypes",method=RequestMethod.POST, produces = "application/json")
    public @ResponseBody JsonResponse addUser(@RequestBody String selectedReport , BindingResult result ){

    System.out.println("Ajax Request Received! reportName = " + selectedReport);

上記の print ステートメントは実行されないことに注意してください。また、単一のコンソール出力も表示されません。リクエストがサーバーに届かない可能性があります。

サーブレット構成に特別な Bean は追加されていませんが、以下の 2 つが追加されています。

<mvc:annotation-driven />
<context:annotation-config/> 

次のjarがクラスパスに追加されます。

jackson-core-2.2.0
jackson-annotations-2.2.0
jackson-databind-2.2.0

アップデート

解決済み: データ型を json に変更しました

4

1 に答える 1