logo DevMedia  
Home Entenda o site Revistas Canais Cursos Palestras Suporte Fórum +Serviços Assine Compre Créditos

Edição do Mês
  Fórum DevMedia
Fórum de Discussão
Conheça também o NOVO fórum da DevMedia, no endereço: www.devmedia.com.br/forum
O novo fórum possui diversas vantagens! Saiba mais em
www.devmedia.com.br/articles/viewcomp.asp?comp=14726
Estamos sempre trabalhando na melhora do site como um todo! Bons códigos!
Equipe DevMedia

 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos  RegistrarRegistrar   
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 
Edição do Mês

Hibernate - Constraint Violation
 
Novo Tópico   Responder Mensagem    Fórum DevMedia - Índice do Fórum -> IDEs e frameworks
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
Flávio Ribeiro
Visitante





MensagemEnviada: Ter Fev 09, 2010 5:19 pm    Assunto: Hibernate - Constraint Violation Responder com Citação

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???? como pode isso?
C?o:

Cannot add or update a child row: a foreign key constraint fails (`classificado`.`categoria`, CONSTRAINT `FK5D54E133D5480FAC` FOREIGN KEY (`categoria_id`) REFERENCES `categoria` (`id`))

Hibernate: insert into categoria (categoria_id, descricao, nome) values (?, ?, ?) //log do hibernate
05/02/2010 08:47:01 org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet struts threw exception
com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Cannot add or update a child row: 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:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
    at com.mysql.jdbc.Util.getInstance(Util.java:381)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1015)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3491)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3423)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1936)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2060)
    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2542)
    //... continuação da exception.. nada de importante depois daqui


sendo que não há violação, olhem o código:
C?o:

@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;

    // ... getters and setters
}


desde já agradeço a ajuda de todos.
Voltar ao Topo
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    Fórum DevMedia - Índice do Fórum -> IDEs e frameworks Todos os horários são GMT - 3 Hours
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Permitido.
Responder Tópicos: Permitido.
Editar Mensagens: Proibído.
Excluir Mensagens: Proibído.
Votar em Enquetes: Proibído.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB