1

Java を使用した Web アプリケーションの開発は初めてです。AJAX 呼び出しを確立しようとしています。これは私が作成した任意のコードです。

サーブレット

        Map<String, String> testJson = new HashMap<String, String>();
    String Key = "someKey";
    String Value = "someValue";

    testJson.put(Key, Value);

    response.setContentType("application/json");
    response.setCharacterEncoding("UTF-8");
    response.getWriter().write(new Gson().toJson(testJson));
}

jQuery

    $(document).on("click","#register-user", function(){
    $.ajax({
        type: 'GET',
        url: 'Register',
        success: function(data){
            alert($.parseJSON(data));
        }
    });
    return false;
});

コールバック関数は Json なしで機能しているため、AJAX は問題ありません。しかし、Json でエンコードされた Java オブジェクトを送り返そうとすると、「Uncaught exception. Unexpected token o」というメッセージが表示されます。私は何を間違っていますか?

4

1 に答える 1

1

これを試して

Gson gson = new GsonBuilder().create();
String json = gson.toJson(testJson);

または、このようなことを少し試してください

 Type typeOfMap = new TypeToken<Map<String, String>>() {}.getType();
 String json = gson.toJson(map, typeOfMap);

このリンクの上記のその他の例

次に、文字列化された JSON を返します

于 2013-06-05T01:12:18.553 に答える