[jboss-user] [Persistence, JBoss/CMP, Hibernate, Database] - adding a constraint with @PrimaryKeyJoinColumn
anewton
do-not-reply at jboss.com
Tue Feb 12 08:44:33 EST 2008
I have two entities that are sharing a primary key using @PrimaryKeyJoinColumn. When the schema is created with hbm2ddl, no foreign key constraint is add. Is there an extra annotation that I need to use to get the constraint generated? I'm using Seam 2.0.0.GA on JBoss 4.2.2.GA. My Hibernate dependencies look like this:
| [INFO] +- org.hibernate:hibernate:jar:3.2.4.sp1:provided
| [INFO] | +- javax.transaction:jta:jar:1.0.1B:provided
| [INFO] | +- asm:asm-attrs:jar:1.5.3:provided
| [INFO] | +- antlr:antlr:jar:2.7.6:provided
| [INFO] | +- cglib:cglib:jar:2.1_3:provided
| [INFO] | \- asm:asm:jar:1.5.3:provided
| [INFO] +- org.hibernate:hibernate-annotations:jar:3.3.0.ga:provided
| [INFO] +- org.hibernate:hibernate-entitymanager:jar:3.3.1.ga:provided
| [INFO] | +- org.hibernate:hibernate-commons-annotations:jar:3.0.0.ga:provided
| [INFO] | \- jboss:jboss-common-core:jar:2.0.4.GA:provided
| [INFO] +- org.hibernate:hibernate-validator:jar:3.0.0.GA:provided
|
Here are the two classes:
| @Entity
| @Name( "user" )
| @Scope( SESSION )
| @Table( name = "WEB_USER" )
| public class User implements Serializable
| {
| private String id;
| private Profile profile;
|
| @Id
| @NotNull
| @GeneratedValue( strategy = GenerationType.AUTO )
| @Column( name = "WEB_USER_ID" )
| public String getId()
| {
| return id;
| }
|
| public void setId( String id )
| {
| this.id = id;
| }
|
| @OneToOne( cascade = CascadeType.ALL )
| @PrimaryKeyJoinColumn
| public Profile getProfile()
| {
| return profile;
| }
|
| public void setProfile( Profile profile )
| {
| this.profile = profile;
| }
| }
|
and
| @Entity
| @Name( "profile" )
| @Table( name = "WEB_USER_PROFILE" )
| public class Profile implements Serializable
| {
| private String id;
|
| @Id
| @Column( name = "WEB_USER_ID", nullable = false )
| public String getId()
| {
| return id;
| }
|
| public void setId( String id )
| {
| this.id = id;
| }
| }
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4128753#4128753
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4128753
More information about the jboss-user
mailing list