In my case, using Springboot 2.7.18 with external WAR deployment to Tomcat 9 the Springboot SseEmitter will throw an IOException when trying to send an event to a client that is not there anymore.
I nonetheless implemented a server side "ping" to the client so that stale connections are cleaned up quickly and not when you actually attempt to send something.