I passed the OCE-JPAD6 (1Z0-898) today with 93%. The exam was pretty tough, but all credit goes to Enthuware and Pro*JP book, which helped a lot!
It took me around 2 months for the preparation with a full time job!
Read Pro* JPA2 by Milke Keith and Merrick Schincariol, worked out most of the sample code - used NetBeans, Glassfish,
Java db
Enthuware mock exams - I would say it is a must for this exam - i scored 60 in the initial pass, 70's in second pass and 80-90's in third pass.
i did all enthuware mocks 3 times
The real exam questions are similar to Enthuware mocks in difficulty; some questions are extremely tough.
You need to read / understand the explanation notes below each Enthuware question and try to understand what you missed in that question,
JPA 2 specifications - jiust skimmed through the specs
there were 7-8 questions from
EJB transactions. For a moment I wondered whether I was writing the EJB exam

BMT, CMT, runtime exception, system exception, EJB Exception, Application exception,
under what scenarios a transaction can be rolled back, EJBTransactionRolledbackException, TransactionAttributes
5-6 questions from Criteria API - which was my weakest link - but somehow I managed 5/6 score in that
6-7 questions from Locking alone - dont miss it - it is very important - understand all the weird combinations and scenarios in locking
also what happens when EM Flush mode = AUTO / COMMIT / not selected and Query Flush mode = AUTO / COMMIT / Not Selected
several questions ( at least 7) from Maps - Collections - make sure you know difference between @MapKey, @MapKeyColumn, @MapKeyClass, @MapKeyJoinColumn @MapKeyEnumerated, @MapKeyTemporal, @MapsId etc
by heart exact syntax for @AssociationOverrides, @AssociationOverride, @AttributeOverrides, @AttributeOverride, @ElementCollection, @JoinTable, @JoinColumn
so many questions about relationship scenarios
1 question about (orphanRemoval)
2-3 questions on Inheritance strategies
Caching - 2-3 questions were there. make sure you knows @Cacheable(true), @Cacheable(false), evict() etc . Make sure you know all methods of Cache interface
difference between COUNT and SIZE
one question from MetaModel API
3-4 questions from JPQL, Bulk DELETE
callback and entity listeners
sub classes of PersistenceException - which exception rollsback transaction and which one does not
one question about @OrderColumn
best of luck to all!