Я constructiong в JSONObject в моих JavaScript, а затем отправить его в виде строки в мой сервлет, используя этот код:Невозможно преобразовать JSON строку в объект
insertDtls = function() {
var jsonObj = [];
jsonObj.push({location: this.location()});
jsonObj.push({value: this.value()});
jsonObj.push({coverage: this.coverage()});
jsonObj.push({validPeriod: this.collateralValidPer()});
jsonObj.push({description: this.description()});
var b = JSON.stringify(jsonObj);
console.log(b.toString());
$.ajax({
url:"/HDSWFHub/AppProxy",
type: 'GET',
data: $.extend({WrJOB: "insertDtls", mainData: b}, tJS.getCommonPostData()),
dataType: "json",
success: function(responseText, status, xhr){
updateViewModel(responseText);
},
error: function(jqXHR, textStatus, error){
tJS.manageError(jqXHR);
}
});
},
Строка выглядит следующим образом: [{"location":"Boston"},{"value":"5"},{"coverage":"15"},{"validPeriod":"08/05/2013"},{"description":"test description"}]
и сервлет получает его без проблем.
Тогда я получаю это в моем сервлета:
String step = request.getParameter("mainData");
JSONObject jsonObj = new JSONObject();
final JSONObject obj = new JSONObject();
System.out.println(step);
try {
obj.put("viewModel", "index");
obj.put("WrSESSIONTICKET", sessionTicket);
response.getWriter().print(obj.toString());
} catch (final Exception e) {
logException(request, response, e, true);
}
Я пытаюсь преобразовать строку JSON обратно на объект в сервлет для того, чтобы быть в состоянии петли корыта элементы, или получить нужный. Библиотека я использую org.json
Я устал:
JSONObject jsonObj = new JSONObject(step);
без какого-либо успеха. Только что получил эту ошибку: Unhandled exception type JSONException
Я не знаю, что происходит. Может быть, я уже слишком устал. Я уверен, что мне не хватает чего-то очень маленького, но я не могу это определить.
Я знаю, что его спрашивали сотни раз. Я знаю, что я получу тонны downvotes, но я не смог найти ответ на мой вопрос.
вы сказали, что вы пытались 'JSONObject jsonObj = новый JSONObject (шаг),' но я не вижу его в коде! – Multithreader
Потому что он не работает. :) Это ошибка: 'Необработанный тип исключения JSONException' – Slim
Распечатайте переменную' step' в сервлете и посмотрите, является ли она правильной строкой JSON. Пожалуйста, опубликуйте его, чтобы мы могли его просмотреть;) – Multithreader