[RESOLVIDO] JAVA WEB - Caused by: java.sql.SQLException: Cannot add foreign key constraint at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:964)

2 respostas
javahibernate
C

gente quando eu tento salvar o meu objeto agenda ele dá o erro informado acima.

vou deixar o código logo abaixo. já estou desesperado. só tenho mais 2 dias para entregar esse projeto.

package com.cleiton.Servlet;

import java.io.IOException;

import javax.servlet.RequestDispatcher;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;
import com.cleiton.Logic.DaoAgenda;

import com.cleiton.model.Agenda;

import com.cleiton.model.Aluno;
@WebServlet("/salvaragenda")

public class ServletCadastroAgenda extends HttpServlet {

/**

*

*/

private static final long serialVersionUID = 1L;

private DaoAgenda salvaragenda = new com.cleiton.Logic.DaoAgenda();

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String cod_aluno = request.getParameter("nomealuno");
	String cod_professor = request.getParameter("nomeprof");
	String horario = request.getParameter("horario");
	String diasemana = request.getParameter("diasemana");
	String curso = request.getParameter("curso");
	String turno = request.getParameter("turno");
	String sala = request.getParameter("sala");
	Agenda agenda = new Agenda();
	
	Aluno aluno = new Aluno();
	agenda.setAluno(aluno);
	//agenda.setCodigo(cod_aluno);
	agenda.setProfessor(cod_professor);
	agenda.setHorario(horario);
	agenda.setDia(diasemana);
	agenda.setCurso(curso);
	agenda.setTurno(turno);
	agenda.setSala(sala);
	


	salvaragenda.salvar(agenda);
	RequestDispatcher r = request.getRequestDispatcher( "menu.jsp" );
	r.forward( request, response );
	
}

}

package com.cleiton.model;

import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.GenerationType;

import <a href="http://javax.persistence.Id">javax.persistence.Id</a>;

import javax.persistence.JoinColumn;

import javax.persistence.ManyToOne;

@Entity(name=CADASTRO_AGENDA)

public class Agenda {

@Id

//define que o código deve ser gerado automaticamente como  foi definido no banco

@GeneratedValue(strategy=GenerationType.IDENTITY)

private int codigo;

@ManyToOne

@JoinColumn(name=aluno)

private Aluno aluno;
private String professor;
private String horario;
private String dia;
private String aula;
private String curso;
private String turno;
private String sala;
public int getCodigo() {
	return codigo;
}
public void setCodigo(int codigo) {
	this.codigo = codigo;
}

public String getProfessor() {
	return professor;
}
public void setProfessor(String professor) {
	this.professor = professor;
}
public String getHorario() {
	return horario;
}
public void setHorario(String horario) {
	this.horario = horario;
}
public String getDia() {
	return dia;
}
public void setDia(String dia) {
	this.dia = dia;
}
public String getAula() {
	return aula;
}
public void setAula(String aula) {
	this.aula = aula;
}
public String getCurso() {
	return curso;
}
public void setCurso(String curso) {
	this.curso = curso;
}
public String getTurno() {
	return turno;
}
public void setTurno(String turno) {
	this.turno = turno;
}
public String getSala() {
	return sala;
}
public void setSala(String sala) {
	this.sala = sala;
}
public Aluno getAluno() {
	return aluno;
}
public void setAluno(Aluno aluno) {
	this.aluno = aluno;
}

}

2 Respostas

J
Aluno aluno = new Aluno();
aluno.setCodigo(codigoDoAluno);
agenda.setAluno(aluno);
C

FUNCIONOU MAN!!! VC MERECE OUTRO BJO KKK
obrigadão man.

Criado 12 de dezembro de 2017
Ultima resposta 12 de dez. de 2017
Respostas 2
Participantes 2