• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Tim Cooke
  • Jeanne Boyarsky
  • Paul Clapham
Sheriffs:
  • Devaka Cooray
  • Ron McLeod
  • paul wheaton
Saloon Keepers:
  • Tim Moores
  • Piet Souris
  • Tim Holloway
  • Stephan van Hulst
  • Carey Brown
Bartenders:
  • Al Hobbs
  • Frits Walraven
  • Scott Selikoff

JPA Auto Incrementing EmbeddedId (Composit primary key values).

 
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi All,

I have a problem with JPA composit primary key. when I am inserting values into Postgresql I am getting below exception

Could not commit JPA transaction; nested exception is javax.persistence.RollbackException: Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.1 (Build b60-fcs (11/17/2008))): oracle.toplink.essentials.exceptions.DatabaseException
Internal Exception: org.postgresql.util.PSQLException: ERROR: null value in column "id_corporative_event" violates not-null constraint
Error Code: 0
Call: INSERT INTO public.tb_corporate_event (provent_price, provent_lot, dt_event, stock_lot, price_ex, dt_last_price_cum, ds_event, user_verified_bovespa, in_verified_company_ri, user_verified_company, in_verified_bovespa, dt_approved, coefficient_multiplication, price_cum, dh_verified_company_ri, dh_verified_company, id_stock, id_corporative_event, id_company, cd_corporative_event_type) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
bind => [null, null, 20100217, 0, 0.0, 21231, NAO NECESSARIO VERIFICACAO, null, N, null, N, null, 0.0, 77.0, null, null, 2, null, 1, AO]
Query: InsertObjectQuery(com.softidsolutions.valebroker.TbCorporateEvent@185e90f)

Could you please help me?

Here is the My POJO classes.


@Entity
@Table(name = "tb_corporate_event", schema = "public")
public class TbCorporateEvent implements java.io.Serializable {

// Fields

private TbCorporateEventId id;

....................
....................
@EmbeddedId
@AttributeOverrides( {
@AttributeOverride(name = "idStock", column = @Column(name = "id_stock", nullable = false)),
@AttributeOverride(name = "idCorporativeEvent", column = @Column(name = "id_corporative_event", nullable = false))})
public TbCorporateEventId getId() {
return this.id;
}

public void setId(TbCorporateEventId id) {
this.id = id;
}

// class ends here

and Embedded class is :

@Embeddable
public class TbCorporateEventId implements java.io.Serializable {

// Fields

private Integer idStock;
private Integer idCorporativeEvent;

...........................

@Column(name = "id_corporative_event", nullable = false)
public Integer getIdCorporativeEvent() {
return this.idCorporativeEvent;
}

public void setIdCorporativeEvent(Integer idCorporativeEvent) {
this.idCorporativeEvent = idCorporativeEvent;
}


I want to Auto increment id_corporative_event value?


Can any body help me?
 
Ranch Hand
Posts: 112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Koti,

How did you solve this problem? I am facing similar issue.
Please let me know if you got around this one.


Thanks
Vivian
 
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Koti and Vivian,

I noticed that in your base class haven't annotated your 'id' with @Id. That would be my first recommendation.

The simplest way to annotate an attribute as a sequence is:
@GeneratedValue(strategy=GenerationType.AUTO)

I believe the default sequencing will be with a table named 'SEQUENCE', and the following attributes:
SEQ_NAME VARCHAR2(50) PK
SEQ_COUNT NUMBER -
 
Vivian Josh
Ranch Hand
Posts: 112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks Shannon.

Yup, I got it later. Thanks for your reply.

-Vivian
 
snakes are really good at eating slugs. And you wouldn't think it, but so are tiny ads:
the value of filler advertising in 2021
https://coderanch.com/t/730886/filler-advertising
reply
    Bookmark Topic Watch Topic
  • New Topic