2016-01-13 6 views
2

Я хотел бы отключить входящий-исходящий веб-сервис на основе флага базы данных.Отключение входящего шлюза веб-службы

Я достиг этого с другими входящими адаптерами (например, файлом), установив атрибут автозапуска на основе выражения SPEL, которое получает значение базы данных.

Любые советы по хорошему способу достижения этого? Я не вижу атрибут автозапуска на ws: inbound-gateway.

ответ

1

Ну, похоже, что это ошибка около Lifecycle, и в случае остановленного состояния мы должны вернуть клиенту что-то вроде HttpStatus.SERVICE_UNAVAILABLE.

Пожалуйста, поднимите билет JIRA по этому вопросу, и мы позаботимся об этом в ближайшее время. Я вижу, что <int-http:inbound-gateway> имеет схожую проблему, даже если там находится auto-startup.

В качестве обходного пути я вижу что-то вроде ChannelInterceptor на request-channel для вас <int-ws:inbound-gateway>, который проверяет некоторые переменные и проливает исключение (NoEndpointFoundException?) От preSend() реализации уведомить WS клиента о том, что услуга не доступна.

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