質問編集履歴

2 コードブロックとエラー内容の追加

dai0324

dai0324 score 11

2016/09/20 13:11  投稿

ajaxのエラー
ajaxを使ってjsonデータの取得をしたいのですが、error functionの方に行ってしまいます。
エラーの内容は  
 
error:[object Object]  
status:error  
errorThrown:Not Acceptable  
です。  
pomにはjackson-databindとjackson-coreを追加してあります。
コードはこちらです。
<%@ page pageEncoding="utf-8"%>
```<%@ page pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page session="false"%>
<html>
<head>
<script
   src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
   $("#ajax_button").click(function() {
       $(".text").val("テキストの挿入");
       $("#output_data").text("");
       $.ajax({
           type       : "GET",
           url        : "ajax_data",
           dataType   : "json",
           success    : function(data) {
                           success(data);
                       },
           error      : function(XMLHttpRequest, textStatus, errorThrown) {
                           error(XMLHttpRequest, textStatus, errorThrown);
                       }
       });
   });
});
//成功
function success(data) {
   alert("success:" + data);
   for (var i = 0; i < data.length; i++) {
       $("#output_data").append("data[" + i + "]:" + data[i] + ";");
   }
}
//失敗
function error(XMLHttpRequest, textStatus, errorThrown) {
   alert("error:" + XMLHttpRequest);
   alert("status:" + textStatus);
   alert("errorThrown:" + errorThrown);
}
</script>
<title>Home</title>
</head>
<body>
   <h1>Hello world!</h1>
   <P>The time on the server is ${serverTime}.</P>
   <div id="ajax_data">
       <input type="button" id="ajax_button" value="Ajaxテスト" /><br/>
       outputData:<span id="output_data"></span>
   </div>
   <input type="text" class="text" value="${data}">
</body>
</html>
```  
 
 
 
```
@RequestMapping(value = "ajax_data", method = RequestMethod.GET)
   @ResponseBody
   public String[] getTestData() {
       logger.info("call getTestData");
       String[] datas = { "test1", "test2", "test3" };
       return datas;
   }
```
見にくいですが、宜しくお願いいたします。
  • Java

    20577 questions

    Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

  • Ajax

    1797 questions

    Ajaxとは、Webブラウザ内で搭載されているJavaScriptのHTTP通信機能を使って非同期通信を利用し、インターフェイスの構築などを行う技術の総称です。XMLドキュメントを指定したURLから読み込み、画面描画やユーザの操作などと並行してサーバと非同期に通信するWebアプリケーションを実現することができます。

1 コードブロックの追加

dai0324

dai0324 score 11

2016/09/20 13:09  投稿

ajaxのエラー
ajaxを使ってjsonデータの取得をしたいのですが、error functionの方に行ってしまいます。
pomにはjackson-databindとjackson-coreを追加してあります。
コードはこちらです。
・jspファイル
<%@ page pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page session="false"%>
<html>
<head>
<script
   src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
   $("#ajax_button").click(function() {
       $(".text").val("テキストの挿入");
       $("#output_data").text("");
       $.ajax({
           type       : "GET",
           url        : "ajax_data",
           dataType   : "json",
           success    : function(data) {
                           success(data);
                       },
           error      : function(XMLHttpRequest, textStatus, errorThrown) {
                           error(XMLHttpRequest, textStatus, errorThrown);
                       }
       });
   });
});
//成功
function success(data) {
   alert("success:" + data);
   for (var i = 0; i < data.length; i++) {
       $("#output_data").append("data[" + i + "]:" + data[i] + ";");
   }
}
//失敗
function error(XMLHttpRequest, textStatus, errorThrown) {
   alert("error:" + XMLHttpRequest);
   alert("status:" + textStatus);
   alert("errorThrown:" + errorThrown);
}
</script>
<title>Home</title>
</head>
<body>
   <h1>Hello world!</h1>
   <P>The time on the server is ${serverTime}.</P>
   <div id="ajax_data">
       <input type="button" id="ajax_button" value="Ajaxテスト" /><br/>
       outputData:<span id="output_data"></span>
   </div>
   <input type="text" class="text" value="${data}">
</body>
</html>
・Controller  
```  
@RequestMapping(value = "ajax_data", method = RequestMethod.GET)
   @ResponseBody
   public String[] getTestData() {
       logger.info("call getTestData");
       String[] datas = { "test1", "test2", "test3" };
       return datas;
   }
```  
 
 
 
見にくいですが、宜しくお願いいたします。
  • Java

    20577 questions

    Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

  • Ajax

    1797 questions

    Ajaxとは、Webブラウザ内で搭載されているJavaScriptのHTTP通信機能を使って非同期通信を利用し、インターフェイスの構築などを行う技術の総称です。XMLドキュメントを指定したURLから読み込み、画面描画やユーザの操作などと並行してサーバと非同期に通信するWebアプリケーションを実現することができます。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る