Sebastiaan,
Yes you're right. I forgot to add something like isClosed() to your
SynchronizedOutputStream so I can check if it's closed before writing.
Anyways, I found that after a certain limit (for ex. 6000 - 8000 users) the
system starts to behave incorrectly. Some clients never get an
Hi,
Thanks for the tip Sebastian, but it doesn't work for me. I added your
class, wrapped all the output streams and synchronized close events but the
result is the same.
Exception in thread MessageSender[] java.lang.NullPointerException
at
Hi,
Did you synchronize the event.close() with same lock you use to write to
the output stream (the SynchronizedOuputStream instance)?
I saw exactly the same stack trace you are getting due to (incorrect)
concurrent access to the CoyoteOutputStream. The NullPointerException
suggest that the
Hi all,
I have been testing Tomcat comet support during the last days. I've created
a test application that simulates data streaming to multiple clients.
Clients open a connection to the server and the connection is hold open. In
the server there are several sender threads that leverage comet
Hi,
I had the same problems. It was a synchronization issue with me. What I
did was make a synchronized output stream wrapper (see attached file)
which wraps all access to the output stream, and I synchronized on this
output stream whenever I called event.close() on the Comet event