Whoops, I just read further down and saw your MessageException class. Makes sense two use two catch blocks then to look for null pointer and message problems and deal with them separately.