Could you please help me with this code.
Code:
@Entity
@Table(name="media_tag", schema="test")
public class MediaWithTags {
private Long id;
private String name;
private String[] tags;
// private List<String> tags;
@Id
@Column(name="id")
@SequenceGenerator(name="seq_media_tag", sequenceName="test.seq_media_tag")
@GeneratedValue(generator="seq_media_tag", strategy=GenerationType.SEQUENCE)
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
@Column(name="name")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Column(name="tags")
@Target(value=String[].class)
public String[] getTags() {
return tags;
}
public void setTags(String[] tags) {
this.tags = tags;
}
// public List<String> getTags() {
// return tags;
// }
// public void setTags(List<String> tags) {
// this.tags = tags;
// }
}
The sql is
Code:
CREATE TABLE test.media_tag
(
id bigint NOT NULL,
"name" character varying(50),
tags character varying(50)[],
CONSTRAINT pk_media_tag PRIMARY KEY (id)
)
WITH (OIDS=FALSE);
When I'm trying to do the insert I obtain the next stacktrace:
Exception in thread "main" org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:90)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:275)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:266)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:167)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:50)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1027)
at com.test.dao.impl.AbstractDaoImpl.commitTransaction(AbstractDaoImpl.java:23)
at com.test.main.Main.main(Main.java:65)
Caused by: java.sql.BatchUpdateException: Batch entry 0 insert into test.media_tag (name, tags, id) values (m_iii, <stream of 220 bytes>, 4550) was aborted. Call getNextException to see the cause.
at org.postgresql.jdbc2.AbstractJdbc2Statement$BatchResultHandler.handleError(AbstractJdbc2Statement.java:2531)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1344)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:343)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeBatch(AbstractJdbc2Statement.java:2668)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268)
... 7 more