RoBlog: equals and hashCode
You learn something everday. I always knew that you should override equals and hashCode, but I never knew that if you override equals then you must override hashCode. RoBlog has an excellent explanation as to why this is and also offers several links to more information. Time to go back and change some code.