The only Exceptions we throw are UnlockedSharedObjectException and NonPortableObjectException. These aren't things one handles at runtime though. They are the kinds of things one handles during developement. We do have some JMX events one can use to determine cluster membership, ie. nodes joining or leaving the cluster.
Also, the exceptions Steve mentions above are "unchecked exceptions" subclassed from RuntimeException and it is not advisable to eat them up in your code. You should try and fix the actual problem by looking at the stack trace.