我正在创建 json 对象来保存数据,然后将其发送到 servlet。但是,当我尝试检索该对象并在 java servlet 中显示其内容时,它会抛出一个错误,提示“A JSONObject 文本必须以 '{' 在 1 [字符 2 第 1 行] 开始”。我不知道如何在 java 中显示从 javascript 发送的 json 对象。这就是我正在做的事情:
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 将对象发送到 servlet:
var param = 'objarray=' +arrayOfObjects;
$.ajax({
url: '/ProjectName/finalXmlServGen',
type: 'POST',
dataType: 'json',
data: param,
success: function(result) {
alert('SUCCESS');
}
});
一旦我调用ajax,我就会收到成功消息。现在,我在 servlet 中接收到这个对象:
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 文本必须以 '{' at 1 [character 2 line 1] 开头”。如何解析对象并形成 xml 或字符串?