Affects: 2.1.3.RELEASE

Hi, I can't handle SockJsMessageDeliveryException in my Spring app. Spring boot version: 2.1.3.RELEASE

releated stackoverflow question

https://stackoverflow.com/questions/61204651/how-can-i-handle-sockjsmessagedeliveryexception-in-spring-app

I tried:

@MessageExceptionHandler({SockJsMessageDeliveryException.class})
public void handle(SockJsMessageDeliveryException e) {
    log.error("Handled websocket exception: " + e.getClass().getSimpleName());
}

and also:

public class SilentErrorSimpMessagingTemplate extends SimpMessagingTemplate {
    private final SimpMessagingTemplate simpMessagingTemplate;

    SilentErrorSimpMessagingTemplate(SimpMessagingTemplate simpMessagingTemplate) {
        super(simpMessagingTemplate.getMessageChannel());
        simpMessagingTemplate.setMessageConverter(new MappingJackson2MessageConverter());
        this.simpMessagingTemplate = simpMessagingTemplate;
    }

    @Override
    public void convertAndSendToUser(@NotNull String user, @NotNull String destination, @NotNull Object payload) throws MessagingException {
        try {
            simpMessagingTemplate.convertAndSendToUser(user, destination, payload);
        } catch (SockJsMessageDeliveryException e) {
            log.error("Socket send error: " + e.getClass().getSimpleName());
        }
    }
}

Comment From: rstoyanchev

This may be a duplicate of #24986. How do you want to handle the issue?

Comment From: okraskat

Avoid logging this exception is enough for me. Thank you for fast feedback.