У меня есть интерфейс отдыха для моего проекта.
Для одного класса у меня есть метод POST, где вы можете опубликовать xml, и я ВЕРНУТЬ пользовательский ответ , например:
<customResponse>Invalid email</customResponse>
если сообщение электронной почты из xml, которое было опубликовано, было неверным + другие пользовательские сообщения, которые я определил для различных ситуаций.
Для всех этих параметров HTTP STATUS автоматически устанавливается на 200 (ОК).
Есть ли способ изменить это?
Ps: я знаю, что могу бросить веб-приложение вроде:
throw new WebApplicationException(Response.Status.BAD_REQUEST);
но в этом случае мой пользовательский ответ больше не включается.
Так что я просто хочу вернуть свою пользовательскую ошибку + 400 в качестве ответа http.
Заранее спасибо.
ОБНОВЛЕНИЕ после комментариев:
Мой метод:
@POST
@Path("{membershipExternalId}")
@Consumes(MediaType.APPLICATION_XML)
@Produces("application/xml")
public CustomResponse invite(){ //code}
Вы видите, что я возвращаю свой ТАМОЖЕННЫЙ ОТВЕТ. Если бы я вернул простой ОТВЕТ, я мог бы установить СТАТУС, но в этом случае я ничего не вижу.