Как обрабатывать исключения в Apache CXF - PullRequest
0 голосов
/ 03 ноября 2011

Я использую CXF для разработки веб-сервисов.

Но мне было интересно, что такое Best Practice для обработки исключений? Допустим, у меня есть webservice-операция create (пользователь). Входящий пользователь является экземпляром класса моего домена User и может быть сохранен непосредственно командой UI, вызвав user.save ()

Если по какой-либо причине сбой save () (например, сбой подключения к сети или ошибка проверки данных из пользовательского DTO), как в соответствии с передовой практикой я передам это исключение клиенту?

Я имею в виду: какой тип исключения подойдет?

Должно ли это исключение быть включено в сигнатуру операции ??

public Response createUser(User user);

@WebService
public interface EmpService {
public Response createUser(User user);
}

И как клиентская сторона должна обрабатывать это исключение?

1 Ответ

0 голосов
/ 16 августа 2012

Одна компания, в которой я работал, с веб-сервисами имела почти 15-летний опыт работы, поэтому я кое-чему научился.Мы обработали исключение просто указанным throws оператором в методе.И если произошла какая-то ожидаемая ошибка, мы просто сконструировали исключение и сгенерировали его с сообщением, указывающим причину, по которой что-то не удалось.

Клиент должен обрабатывать все исключения, создаваемые сервисом, в любом случае, когда ему это нравится.Если вы разрабатываете веб-сервис, вам нужно беспокоиться о том, как правильно создать исключение с соответствующей причиной.И когда возникает исключение, клиент все равно его увидит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...