Looking at Remote Listeners and Continuous Queries last week I noticed that after the
default 60secs of inactivity the socket maintained open for server to client push of grid
events was closed with java.net.SocketTimeoutException and the client had no way of
recovering.
I am not sure if this was intentional feature so that inactive connections are closed but
the way to overcome this was to set sockettimeout(0).
However, even this solution is not perfect as in an environment where client/server are
separated by a firewall the "inactive" connection could be closed by the
firewall.
It be useful to "refresh" the connection at SOCKET_TIMEOUT-x Time to ensure this
doesn't occur.
Stelios