Nå, jeg fandt en anden måde at lave designet på. Mere fordi designet udviklede sig end et arbejde rundt.
Jeg hørte dog fra en kollega, der havde haft det samme problem, at unikke begrænsninger kun oprettes af dvaletilstand (vi kører JBoss 4.3), når hele databasen er oprettet. Det virker ikke, når du opretter en ny tabel i en eksisterende database.
Så i persistence.xml er det nødvendigt at indstille hibernate.hbm2ddl.auto til create-drop at få det til at fungere. Jeg kan dog ikke bekræfte dette.