Я использую angularjs с Struts2. Я могу отправить запрос от angularjs к классу действий Struts2 и получить там объект json и установить json в объекте ответа в действии, но при получении json в angularjs получить недопустимую ошибку персонажа в консоли браузера и в отладке получить undefined для объект ответа. Ниже приведен код для того же: -Получение недопустимой ошибки символа в angularjs и значение ответа не определено
angularModule.controller('ResultDatabaseCtrl',function($scope,$http){
$http.get('/url/test').then(function(response)
{
$scope.data=response;
})
});
И в действии Struts2 Я пишу код ниже:
public String Test() throws ServletException {
response.setContentType("text/json");
response.setHeader("Cache-Control","no-cache");
try {
aggOutput = Delegator.getInstance().processRequest(aggInput);
response.getWriter().write((String) aggOutput.getValueObject());
} catch(Exception e) {
e.printStackTrace();
}
return null;
}
Здесь в aggOutput.getValueObject
оказывает код JSON в указанном ниже формате:
{ identifier: "id",items: [ { id:"1", name:"ABC", Age:12 },
{ id:"1", name:"PQR", Age:2 }]}
в то время как получение данных в angularjs от контроллера получать ответ не определено во время отладки в браузере и в консоли получать ошибку ниже: -
SyntaxError: Invalid character
at uc (http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js:15:466)
at $b (http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js:82:358)
at Anonymous function (http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js:83:272)
at n (http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js:7:331)
Ответ - это что-то возвращенное Struts2. Не зная, как Struts2 может возвращать данные с ответом, вы не можете получить какой-либо объект в угловом режиме. –
Это НЕ действительная строка json. См. Http://www.json.org/. –