After the batches and EM.flush() call EM.clear() to remove the managed objects from the persistence context.
And for cache settings use @Cacheable(false) or eclipselink.cache.shared.default=false.
Setting the cache type to NONE is not recommended.
[Message sent by forum member 'gyorke']
http://forums.java.net/jive/thread.jspa?messageID=474692