Я работаю над веб-службой с некоторым существующим кодом на Java. Веб-служба использует интерфейс ServletResponse для генерации ответа. Текущий код сначала создает объект ServletResponse, задает заголовки, затем передает ServletOutputStream другому методу и позволяет другому методу написать часть тела ответа. Код, как показано ниже:установить код состояния внутри ServletOutputStream
{
ServeletResponse sr = new HttpServletResponseWrapper();
sr.setContentType("text/xml;charset=utf-8");
//checkLogic write the HTTP response body to outputstream
checkLogic(xmlRequestTree, sr.getOutputStream());
}
«checkLogic» проверяет сверку xmlRequestTree (относительно нашей BUSSINESS логики), и если подтверждено, напишите ответ на пройденный OutputStream, если нет, то напишите об ошибке в OutputStream. Теперь я хотел бы изменить checkLogic(), когда проверки не удались, не только написать сообщение об ошибке, но и вернуть код ошибки HTTP. Мой вопрос: если сохранить существующую структуру кода без изменений, можно ли установить код HTTP внутри checkLogic(), поскольку checkLogic() получает только OutPutStream ответа.