 Although much more complicated I assume a better performing system would involve my own session control, request scope beans, stateless ejb and application managed entity manager (emf) where I only preserve the cache when it is a long standing transaction. 