2016-04-27 3 views
0

Нужна ваша помощь. Я использую почтальон и пытаюсь получить информацию в формате JSON. Но вместо правильного формата сообщения я получил этот результат -> «[]»Произвести данные в JSON

У меня нет никаких ошибок, и я могу распечатать на консоли запрошенную информацию, но не могу в браузере. Я надеюсь, что кто-нибудь может дать мне подсказку ..

@GET 
@Path("/{messager_id}") 
@Produces(MediaType.APPLICATION_JSON) 
public String GetMessageById(@PathParam("messager_id") long id){ 

    String message = new MessageService().getMessageById(id); 

    return message; 
} 
+0

Ваше сообщение содержит данные? –

+0

Да. Только символ -> "[]"! –

+0

Вместо: Имя, фамилия, MessageDate .. –

ответ

0

Я бы рекомендовал в первую очередь использовать некоторый клиент webservice как DHC REST Client (аддон для браузера Chrome). Используйте его и проверьте реальное поведение вашего веб-сервиса. Если клиент получает и пуст json-объект, то убедитесь, что ваш сервер создает пустые данные. Запишите строку message, чтобы быть уверенным в возврате данных. Если это правильно, проверьте метод возврата. Примером возврата веб-сервиса может быть:

return Response.ok(message, MediaType.APPLICATION_JSON).build(); 
+0

Да, у меня есть hasEntity = false .. –

+0

Не могу понять, почему сервер создает пустые данные. Здесь мой метод сообщения. –

+0

Если ваш MessageService() не возвращает сообщение уже как JSON (как я предполагаю) вы ожидаете, что магия преобразуется как структура JSON. Ваш ответ 'hasEntity = false' не имеет смысла для меня, ни того редактирования, которое вы пытались сделать в моем сообщении. – JorgeHortelano

0

Проверьте заголовок типа содержимого устанавливается: Content-type = application/json. Пожалуйста, предоставьте дополнительную информацию.

+0

У меня есть Content-type = application/json. –

+0

Какая информация вам нужна? –

+0

Способ печати данных в консоли. Если вы используете джерси-отдых, верните ответ как ** Response.ok (message) .build() ** и измените тип возврата на ** javax.ws.rs.core.Response ** вместо ** String * *. –

0

Проверяем, что MessageService.getMessageById (id) возвращает данные.

+0

Я сделал это с system.out для консоли и получил сообщение правильно! –

+0

Но не в формате JSON в браузере. Что это может быть? –

Смежные вопросы