Thanks for the reply.
We are using CMT for most of our transactions and BMT for just a few where we are processing batch type jobs.
So there is a transaction running but if there is a database error (ex Optimistic lock or unique constraint violation), this is when the null pointer exception occurs.
I found a JIRA that someone else logged referencing my post so I am waiting to see where this goes.
https://hibernate.onjira.com/browse/HHH-7215?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel#issue-tabs
For curiousity, I applied the patch described in the JIRA and that solved the problem.