Hi. I'm new in JPA and I have problem with inserting in database.
I don't know how to insert object and disable an attempt of inserting in related tables.
example:
@Entity
@Table(name = "MAIN_TABLE", schema = "SCH")
@Inheritance(strategy=InheritanceType.JOINED)
public class MainClass extends MainDataObject {
@Id
public Integer id;
@Column(name = "session", nullable = false)
@ManyToOne(optional = false, cascade = CascadeType.PERSIST)
@JoinColumn(name="session",referencedColumnName="id")
public ProblematicSession session;
.....
}
---------------------------------------------------
@Entity
@Table(name = "PROBBLEMATICTABLE", schema = "SCH")
public class ProblematicSession extends MainDataObject {
@Id
@Column(insertable = false)
@GeneratedValue(strategy=GenerationType.IDENTITY)
public Integer id;
.....
}
Database create ID, so I put insertable = false and strategy=GenerationType.IDENTITY.
When I insert into MAIN_TABLE, how to disable an attempt of inserting in related table (PROBBLEMATICTABLE).
if I set for example ProblematicSession.id = 1 error is:
This existing value was either provided via an initializer or by calling the setter method. You either need to remove the @GeneratedValue annotation or modify the code to remove the initializer processing.
If I set ProblematicSession.id = null, also try to insert into PROBBLEMATICTABLE. A do not want that!!!
[Message sent by forum member 'du27177' (du27177)]
http://forums.java.net/jive/thread.jspa?messageID=279820