what says the server.log file?
open the jmx console on the host to see what's happening (see if the naming service is registered)
I have had services die on me before and usually it was because of load (i.e. too many threads running).
I found out exactly how many threads my JVM could create given my settings and OS. I then checked to see exactly under what circumstances was this limit reached. I found a few leaks in our code which was casuing idle threads to multiply and eventually choking some services.
Just my experience not to say that this is the problem you might be having.