2017-05-03 11 views
0

コントローラに存在するJsonデータが、「リソースの読み込みに失敗しました:サーバがステータスを406(Not Acceptable)の状態で応答しました。 ブラウザまたはエラー関数が実行されている中...
いずれかが私を助けることができるJSONデータがコントローラからAJAXコールに送信されない

AJAXコール

<script type="text/javascript"> 
    google.charts.load("current", {packages:["corechart"]}); 
    google.charts.setOnLoadCallback(drawChart); 
    alert("I am okay"); 
    function drawChart() { 
     $.ajax({ 
      url: "index.html", 
      type:'get', 
      headers: { 
       'Accept': 'application/json', 
       'Content-Type': 'application/json' 
      }, 
      //dataType: "json", 
      success: function (jsonData) { 
       alert("Success.............."); 
       alert(jsonData.jData); 
       var data = new google.visualization.DataTable(); 
       // assumes "word" is a string and "count" is a number 
       data.addColumn('number', 'Year'); 
       data.addColumn('number', 'Sales'); 
       data.addColumn('number', 'Expenses'); 
       data.addColumn('number', 'Profit'); 
       alert("inside....."); 
       alert(data); 
       for (var i = 0; i < jsonData.length; i++) 
       { 
        data.addRow([jsonData[i].profit, jsonData[i].sales, jsonData[i].year, jsonData[i].expenses]); 
       } 
       alert(data); 
       var options = { 
        title: 'Company Details', 
       }; 
       var chart = new google.visualization.PieChart(document.getElementById('Chart_div')); 
       chart.draw(data, options); 
      }, 
     error: function(e) 
     { 
      alert('Error: ' + e); 
      } 
     }); 
    } 
</script> 

コントローラ

事前に
@RequestMapping(value = "/index",method = RequestMethod.GET,headers = {"Content-type=application/json"}) 
@ResponseBody 
public JSONArray getshowempPage() throws SQLException, JSONException 
{ 
    JSONArray jData=gservice.GraphData(); 
    System.out.println(jData.toString()); 
    //Here i am getting This result 
     jData = [{"profit":"200","sales":"2000","year":"2014","expenses":"400"},{"profit":"250","sales":"1170","year":"2015","expenses":"460"}] 
    return jData; 
} 

おかげで.....

+0

下に試すことができます。 Springは要求を正しく処理します – cralfaro

答えて

0

あなたはあなたのコントローラからも、あなたのAJAX呼び出しから属性ヘッダを削除し、可能性があり、それを簡単にするためのスクリプト

<script type="text/javascript"> 
    google.charts.load("current", {packages:["corechart"]}); 
    google.charts.setOnLoadCallback(drawChart); 
    alert("I am okay"); 
    function drawChart() { 
     $.ajax({ 
      url: 'index.html', 
      type:'get', 
      dataType: 'json', 
      success: function (jsonData) { 
       alert("Success.............."); 
       alert(jsonData.jData); 
       var data = new google.visualization.DataTable(); 
       // assumes "word" is a string and "count" is a number 
       data.addColumn('number', 'Year'); 
       data.addColumn('number', 'Sales'); 
       data.addColumn('number', 'Expenses'); 
       data.addColumn('number', 'Profit'); 
       alert("inside....."); 
       alert(data); 
       for (var i = 0; i < jsonData.length; i++) 
       { 
        data.addRow([jsonData[i].profit, jsonData[i].sales, jsonData[i].year, jsonData[i].expenses]); 
       } 
       alert(data); 
       var options = { 
        title: 'Company Details', 
       }; 
       var chart = new google.visualization.PieChart(document.getElementById('Chart_div')); 
       chart.draw(data, options); 
      }, 
     error: function(e) 
     { 
      alert('Error: ' + e); 
      } 
     }); 
    } 
</script> 
+0

ありがとうございます、しかしまだ得られません。 – kumar

関連する問題