"ACCOUNTID" is the primary key for the entity, and JPA only allows using the primary key in references and should be giving you validation errors. You can try turning on Logging to see if you are getting warnings or other messages during start up/deployment as described here: http://wiki.eclipse.org/EclipseLink/Examples/JPA/Logging

I suspect there are problems with your entity design though, as I do not see how "Account_accountId" can be used both as the "UserAccount" table foreign key to its "Account" table row (as described in the @PrimaryKeyJoinColumn) and as a foreign key for a OneToOne mapping to an Account entity - this implies it has a relationship to itself, since the row in the "Account" table with that value represents a UserAccount entity. Joined table inheritance you have setup means that UserAccount entities span both the "UserAccount" and "Account" tables, so I believe this mapping should be removed.

The reference table should also point to the entities primary key, which is the Account.accountId field, and should be enough to uniquely identify the entity without the use of the email.