Spent 3 hours debugging a null pointer exception yesterday. Turned out the problem was one line: user.getAddress().getCity().toUpperCase() If address is null, it blows up. If city is null, it blows up ...