After a lot of searching I found a bug in one of my constructors which will cause my code to fail. It should not be used as the entity manager is not to use other constructors than a no argument one, but ....
Because of the bug in the first place, I have never come around to bug test the rest of the code which would have revealed this failure.
But there is still questions that I need to get answered:
Why is the database trying to comitt something when I only want to read from the database?
It is stated that an entity manager has a transaction scope of the instantiating class. If you instantiate the entity manager in one class but use this instance with a sub class by invoking a method on the super class, will this affect the transaction scope?