I was recently at a Java event and you could see the tension between the JDO proponents and Entity Beans proponents. The JDO guys don't say it explicitly but basically their message is who needs Entity Beans which doesn't sit well with the EJB guys.

How did J2EE go so wrong with their persistence model? From what I understand IBM had a big role in the J2EE spec and they should know this stuff with all their work on Smalltalk. In fact, I still haven't figured out why IBM jumped so hard on the Java bandwagon when they were one of only 2 major players in the Smalltalk market. I guess, after their experience with OS/2 (the superior product losing out to an inferior hyped product) they figured that they should back Java and make a bundle on consulting services when all the Java projects need help.