Hibernate - Constraint Violation
09/02/2010
0
Galera, estou desenvolvendo um site de classificados só que não estou conseguindo cadastrar uma categoria sem informar a categoria Pai da mesma.
a questão é que ele está acusando violação de foreign key e ainda por cima na tabela de classificado O.o?&63&63&63 como pode isso&63
sendo que não há violação, olhem o código:
desde já agradeço a ajuda de todos.
a questão é que ele está acusando violação de foreign key e ainda por cima na tabela de classificado O.o?&63&63&63 como pode isso&63
Cannot add or update a child row&58; a foreign key constraint fails (`classificado`.`categoria`, CONSTRAINT `FK5D54E133D5480FAC` FOREIGN KEY (`categoria_id`) REFERENCES `categoria` (`id`)) Hibernate&58; insert into categoria (categoria_id, descricao, nome) values (&63, &63, &63) //log do hibernate 05/02/2010 08&58;47&58;01 org.apache.catalina.core.StandardWrapperValve invoke SEVERE&58; Servlet.service() for servlet struts threw exception com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException&58; Cannot add or update a child row&58; a foreign key constraint fails (`classificado`.`categoria`, CONSTRAINT `FK5D54E133D5480FAC` FOREIGN KEY (`categoria_id`) REFERENCES `categoria` (`id`)) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java&58;39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java&58;27) at java.lang.reflect.Constructor.newInstance(Constructor.java&58;513) at com.mysql.jdbc.Util.handleNewInstance(Util.java&58;406) at com.mysql.jdbc.Util.getInstance(Util.java&58;381) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java&58;3491) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java&58;3423) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java&58;1936) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java&58;2060) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java&58;2542) //... continuação da exception.. nada de importante depois daqui
sendo que não há violação, olhem o código:
@Entity @Table(name = "categoria") public class Categoria implements Serializable { @Id @GeneratedValue @Column(name = "id") private Integer id; @Column(name = "nome", length = 80, nullable = false) private String nome; @Column(name = "descricao", length = 150, nullable=true) private String descricao; // A questão é que tanto nessa parte quanto no banco essa foreign key pode ser null (categoria_id) // essa categoria representa a categoria pai dessa categoria @ManyToOne @JoinColumn(name = "categoria_id", nullable=true) private Categoria categoriaPai; @OneToMany(mappedBy = "categoriaPai", fetch = FetchType.EAGER) @Fetch(FetchMode.SUBSELECT) private List subCategorias; }
desde já agradeço a ajuda de todos.
Anonymous
Curtir tópico
+ 0
Responder
Posts
11/04/2010
Carlos Mazzi
conseguiu companheiro?
Porfavor, post ai se deu certo, para que possamos compartilhar o fechamento desse post.
Abraços++
Responder
Clique aqui para fazer login e interagir na Comunidade :)