We have actually had quite a few conversations in the past few weeks about this subject, either directly or indirectly. The major consensus is that JDO looks really nice but it is not being supported by any of the major players. In fact, there isn't a single implementation of JDO that fully supports the spec. The most widely used JDO-type product is Castor, and Castor is only JDOish. The Jakarta OJB project has aspirations of JDO but isn't there yet. Basically CMP is still the only persistance framework in town from a standards perspective. Hopefully JDO will catch on more and we will actually have a choice.
I have used EJB CMP 2.0 a lot. And I wrote a tutorial on it (included in sig). I am biased towards it. I have seen several JDO presentations. There are features of JDO that I really like and find are useful. However, at this point I think EJB CMP leads the way. Keep an eye on JDO, if you have to build/deploy now and you are using J2EE then use EJB CMP 2.0. In the future, I think EJB CMP will be built on top of JDO (my opinion after looking at the mass overlap)...this should happen by EJB 2.2 or 2.3 (guess). Start learning about EJB CMP 2.0 with the step by step tutorial that I wrote. (Note the link has reviews of the tutorial as well)