Я пишу веб-приложение REST (NetBeans 6.9, JAX-RS, TopLink Essentials) и пытаюсь вернуть код состояния JSON и. У меня есть готовый код и работающий, который возвращает JSON при вызове метода HTTP GET от клиента. По существу:
@Path("get/id")
@GET
@Produces("application/json")
public M_機械 getMachineToUpdate(@PathParam("id") String id) {
// some code to return JSON ...
return myJson;
}
Но я также хочу вернуть код состояния HTTP (500, 200, 204 и т.д.) вместе с данными JSON.
Я попытался использовать HttpServletResponse
:
response.sendError("error message", 500);
Но это заставило браузер считать его "реальным" 500, поэтому выходная веб-страница была обычной страницей ошибок HTTP 500.
Я хочу вернуть код состояния HTTP, чтобы мой клиентский JavaScript мог обрабатывать некоторую логику в зависимости от него (например, отображать код ошибки и сообщение на странице HTML). Возможно ли это или должны ли коды состояния HTTP не использоваться для такой вещи?