データを保存するためのjsonオブジェクトを作成し、それをサーブレットに送信しています。しかし、オブジェクトを取得してその内容をJavaサーブレットに表示しようとすると、「JSONObjectテキストは1[文字2行1]の'{'で始まる必要があります」というエラーがスローされます。javascriptから送信されたjsonオブジェクトをjavaで表示する方法がわかりません。これが私がしていることです:
Javascriptコード:
var arrayOfObjects = [];
arrayOfObjects.push({"divid":imageinc,"xCordinates":Xcord,"yCordinates":Ycord,"Height":canvasWidth,"Width":canvasHeight, "PageNo":pageNum});
Javascriptコンテンツの表示:
for (var i = 0; i < arrayOfObjects.length; i++) {
var object = arrayOfObjects[i];
for (var property in object) {
alert(property + '=' + object[property]);
}
}
jquery Ajaxを使用してオブジェクトをサーブレットに送信します:
var param = 'objarray=' +arrayOfObjects;
$.ajax({
url: '/ProjectName/finalXmlServGen',
type: 'POST',
dataType: 'json',
data: param,
success: function(result) {
alert('SUCCESS');
}
});
ajaxを呼び出すと、成功メッセージが表示されます。今、私はサーブレットでこのオブジェクトを次のように受け取っています:
String objarray = request.getParameter("objarray").toString();
try {
JSONObject jsonObj = new JSONObject(objarray);
String xmlString= XML.toString(jsonObj);
System.out.println("JSON to XML: " + xmlString);
} catch (JSONException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
コンソールに表示されるメッセージは、「JSONObjectテキストは1[文字2行1]の'{'で始まる必要があります」というエラーです。オブジェクトを解析してxmlまたは文字列を作成するにはどうすればよいですか?