Note that there is a serious bug in the code I included in the answer of my own
question. I am using the BaseClassStrategy also for subclasses which affects
what tables are generated for inheritance! To solve this you should use
<property name="openjpa.jdbc.MappingDefaults"
value="nl.hm.olga.core.dao.openjpa.KeyConstraintNamesMappingDefaults(ForeignKeyDeleteAction=restrict,
JoinForeignKeyDeleteAction=restrict,
BaseClassStrategy=org.apache.openjpa.jdbc.meta.strats.PrimaryKeyConstraintNameFullClassStrategy)"
/>
But this again results in non-predictable names for primary keys used in
subclasses.