Я использую Spring's StompWebsocketClient
.
Когда возникает исключение во время преобразования сообщения, полученного в подписке, исключение не предоставляется для StompFrameHandler
, который я зарегистрировал во время вызова subscribe
.
Вместо этого он передается от StompSessionHandler
до handleException()
.
Я бы хотел иметь возможность обрабатывать исключения на уровне обработчика фреймов, чтобы перехватывать некоторые специфичные для подписки действия.
Пока я думаю только о следующем:
- отслеживать все подписки вручную с
StompSessionHandler
- прочитайте заголовки STOMP в
handleException()
, чтобы узнать, из какой подписки исходит исключение
- вручную уведомляет соответствующий
StompFrameHandler
для этой подписки с помощью пользовательского метода
Прежде чем я это реализую, есть ли другой способ сделать это?
Любая идея, почему Spring не предоставляет это из коробки?