diff options
author | ceci <caggsld@gmail.com> | 2013-06-22 18:39:19 (GMT) |
---|---|---|
committer | ceci <caggsld@gmail.com> | 2013-06-22 18:39:19 (GMT) |
commit | 2ccffcf6a7cd7e686c3a5fbb6d82874b6478cdaf (patch) | |
tree | d0ba7c45a0d1e25307876a727220bff02cee7db8 | |
parent | a0c9d9170042ad3638ca7bdac39040f800c7c7b1 (diff) | |
parent | ca90010aebe1f688a564383c4d6728b657dd22e9 (diff) |
Merge remote-tracking branch 'remotes/origin/samu' into Cecilia
20 files changed, 159 insertions, 97 deletions
diff --git a/EjercitarClient/gui/Ejercitario.py b/EjercitarClient/gui/Ejercitario.py index ce6bcde..1ca0fee 100644 --- a/EjercitarClient/gui/Ejercitario.py +++ b/EjercitarClient/gui/Ejercitario.py @@ -24,7 +24,7 @@ class Ejercitario(gtk.VBox): self.cliente_WS = cliente_WS self.__inicializar_componentes() - self.siguiente_ejercicio = self.__obtener_siguiente_ejercicio(cliente_WS) + self.siguiente_ejercicio = self.__obtener_siguiente_ejercicio(cliente_WS, 0) self.__organizar_gui(self.siguiente_ejercicio) #self.__sincronizar_temas() self.show_all() @@ -67,17 +67,17 @@ class Ejercitario(gtk.VBox): def __sincronizar_temas(self): pass - def __obtener_siguiente_ejercicio(self, cliente_WS): + def __obtener_siguiente_ejercicio(self, cliente_WS, id_ejercicio): try: #cliente_WS = Client(self.WSDL_URL) - siguiente_ejercicio = cliente_WS.service.getSiguienteEjercicio(self.id_tarea, self.id_alumno, self.siguiente_ejercicio.idEjercicio, "respuesta") + siguiente_ejercicio = cliente_WS.service.getSiguienteEjercicio(self.id_tarea, self.id_alumno, id_ejercicio, "respuesta") except: print "\n\nERROR al instanciar el SINCRONIZAR PROXY:" return siguiente_ejercicio def __responder_cb(self, boton): - siguiente_ejercicio = self.__obtener_siguiente_ejercicio(self.cliente_WS) + siguiente_ejercicio = self.__obtener_siguiente_ejercicio(self.cliente_WS, self.siguiente_ejercicio.idEjercicio) self.__actualizar_gui(siguiente_ejercicio) def __actualizar_gui(self, siguiente_ejercicio): diff --git a/EjercitarClient/gui/casa.png b/EjercitarClient/gui/casa.png Binary files differnew file mode 100644 index 0000000..8740739 --- /dev/null +++ b/EjercitarClient/gui/casa.png diff --git a/EjercitarClient/gui/enamorado.png b/EjercitarClient/gui/enamorado.png Binary files differnew file mode 100644 index 0000000..ed15ab3 --- /dev/null +++ b/EjercitarClient/gui/enamorado.png diff --git a/EjercitarClient/gui/familia1.png b/EjercitarClient/gui/familia1.png Binary files differnew file mode 100644 index 0000000..ea148d2 --- /dev/null +++ b/EjercitarClient/gui/familia1.png diff --git a/EjercitarClient/gui/feliz.png b/EjercitarClient/gui/feliz.png Binary files differnew file mode 100644 index 0000000..b596e56 --- /dev/null +++ b/EjercitarClient/gui/feliz.png diff --git a/EjercitarClient/gui/suenho.png b/EjercitarClient/gui/suenho.png Binary files differnew file mode 100644 index 0000000..0e38a7d --- /dev/null +++ b/EjercitarClient/gui/suenho.png diff --git a/EjercitarClient/gui/triste.png b/EjercitarClient/gui/triste.png Binary files differnew file mode 100644 index 0000000..31db931 --- /dev/null +++ b/EjercitarClient/gui/triste.png diff --git a/EjercitarJPA/src/model/Ejercicio.java b/EjercitarJPA/src/model/Ejercicio.java index 7781794..026555c 100644 --- a/EjercitarJPA/src/model/Ejercicio.java +++ b/EjercitarJPA/src/model/Ejercicio.java @@ -23,6 +23,7 @@ import javax.persistence.OneToMany; import javax.persistence.Table; import javax.validation.constraints.NotNull; import javax.validation.constraints.Size; +import javax.xml.bind.annotation.XmlElementWrapper; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; @@ -58,6 +59,7 @@ public class Ejercicio implements Serializable { @JoinColumn(name = "id_ejercicio", referencedColumnName = "id_ejercicio")}, inverseJoinColumns = { @JoinColumn(name = "id_respuesta", referencedColumnName = "id_respuesta")}) @ManyToMany(cascade = CascadeType.ALL) + @XmlElementWrapper private List<Respuesta> respuestaList; @JoinColumn(name = "respuesta", referencedColumnName = "id_respuesta") @ManyToOne(cascade = CascadeType.ALL) diff --git a/EjercitarServer/ejbModule/beans/AdministracionBean.java b/EjercitarServer/ejbModule/beans/AdministracionBean.java index 629ce9a..e60d742 100644 --- a/EjercitarServer/ejbModule/beans/AdministracionBean.java +++ b/EjercitarServer/ejbModule/beans/AdministracionBean.java @@ -10,8 +10,10 @@ import javax.persistence.PersistenceContext; import smile.Network; +import model.Alumno; import model.Asignatura; import model.Concepto; +import model.Curso; import model.Ejercicio; import model.Profesor; import model.Tarea; @@ -103,7 +105,7 @@ public class AdministracionBean implements AdministracionBeanRemote, Administrac private void eliminarConceptoRed(Concepto concepto) { // TODO Auto-generated method stub\ - String nombreRed = "red_base_curso_1.xdsl"; + String nombreRed = "red_asignatura_" + 1 + ".xdsl"; Network net = new Network(); net.readFile("redes/" + nombreRed); net.deleteNode(concepto.getNombre()); @@ -117,6 +119,10 @@ public class AdministracionBean implements AdministracionBeanRemote, Administrac public void agregarAsignatura(Asignatura asignatura) { em.persist(asignatura); + Network net = new Network(); + String nombreRed = "red_asignatura_" + asignatura.getIdAsignatura() + ".xdsl"; + net.writeFile("redes/" + nombreRed); + } public void agregarTarea(Tarea tarea, ArrayList<Concepto> conceptoList) { @@ -126,27 +132,27 @@ public class AdministracionBean implements AdministracionBeanRemote, Administrac em.merge(tarea); } - public void calcularProbabilidades(Profesor profesor) { + public void calcularProbabilidades(int idAsignatura) { // Calculo de las probabilidades condicionales de las relaciones de agregacion - String nombreRed = "red_base_curso_1.xdsl"; + String nombreRed = "red_asignatura_" + idAsignatura + ".xdsl"; System.out.println("redes/" + nombreRed); Network net = new Network(); net.readFile("redes/" + nombreRed); - //agregar where - List<Tema> temaList = (List<Tema>) em.createQuery("Select e from Tema e").getResultList(); + Asignatura asignatura = em.find(Asignatura.class, idAsignatura); + + List<Tema> temaList = (List<Tema>) em.createQuery("Select e from Tema e where e.profesor = :profesor") + .setParameter("profesor", asignatura.getProfesor()).getResultList(); for(Tema tema : temaList) { double[] temaDef = calcularProbabilidadesTema(tema); net.setNodeDefinition(tema.getNombre(), temaDef); } - //agregar where - List<Asignatura> asignaturaList = (List<Asignatura>) em.createQuery("Select e from Asignatura e").getResultList(); - for(Asignatura asignatura : asignaturaList) { - double[] asignaturaDef = calcularProbabilidadesAsignatura(asignatura); - net.setNodeDefinition(asignatura.getNombre(), asignaturaDef); - } + + double[] asignaturaDef = calcularProbabilidadesAsignatura(asignatura); + net.setNodeDefinition(asignatura.getNombre(), asignaturaDef); + net.writeFile("redes/" + nombreRed); } @@ -168,6 +174,9 @@ public class AdministracionBean implements AdministracionBeanRemote, Administrac } private double cpAsignatura(Asignatura asignatura, int i) { + + + ////HAY QUE REVISAR ESTA FUNCION String comb = Integer.toBinaryString(i); int dimension = asignatura.getTemaList().size(); while(comb.length() != dimension){ @@ -175,9 +184,12 @@ public class AdministracionBean implements AdministracionBeanRemote, Administrac } int k = dimension - 1; double valTemp = 0; - for (int j = 0; j < dimension; j++) { + List<Tema> temaList = em.createQuery("Select e from Tema e where e.asignatura = :asignatura") + .setParameter("asignatura", asignatura).getResultList(); + System.out.println(temaList); + for (int j = 0; j < temaList.size(); j++) { if(comb.charAt(k) == '1') { - valTemp = valTemp + asignatura.getTemaList().get(j).getPeso(); + valTemp = valTemp + temaList.get(j).getPeso(); } k--; } @@ -264,7 +276,7 @@ public class AdministracionBean implements AdministracionBeanRemote, Administrac private void agregarEjercicioRed(Ejercicio ejercicio) { //operaciones sobre la red bayesiana con smile - String nombreRed = "red_base_curso_1.xdsl"; + String nombreRed = "red_asignatura_" + 1 + ".xdsl"; System.out.println("redes/" + nombreRed); Network net = new Network(); net.readFile("redes/" + nombreRed); @@ -290,7 +302,7 @@ public class AdministracionBean implements AdministracionBeanRemote, Administrac private void agregarTemaRed(Tema tema) { //operaciones sobre la red bayesiana con smile - String nombreRed = "red_base_curso_1.xdsl"; + String nombreRed = "red_asignatura_" + 1 + ".xdsl"; System.out.println("redes/" + nombreRed); Network net = new Network(); net.readFile("redes/" + nombreRed); @@ -301,16 +313,13 @@ public class AdministracionBean implements AdministracionBeanRemote, Administrac net.setOutcomeId(titulo, 0, "No_conoce"); net.setOutcomeId(titulo, 1, "Conoce"); - - - //definir probabilidades - //net.setNodeDefinition(titulo, ejercicioDef); net.writeFile("redes/" + nombreRed); } private void agregarConceptoRed(Concepto concepto) { //operaciones sobre la red bayesiana con smile - String nombreRed = "red_base_curso_1.xdsl"; + String nombreRed = "red_asignatura_" + 1 + ".xdsl"; + System.out.println("redes/" + nombreRed); Network net = new Network(); net.readFile("redes/" + nombreRed); @@ -357,7 +366,8 @@ public class AdministracionBean implements AdministracionBeanRemote, Administrac @Override public String getValorNodoRed(String nombre) { // TODO Auto-generated method stub - String nombreRed = "red_base_curso_1.xdsl"; + String nombreRed = "red_asignatura_" + 1 + ".xdsl"; + Network net = new Network(); net.readFile("redes/" + nombreRed); @@ -370,4 +380,29 @@ public class AdministracionBean implements AdministracionBeanRemote, Administrac return Double.toString(conoce); } + + + + @Override + public void crearRedAlumnos(int idAsignatura) { + // TODO Auto-generated method stub + + Asignatura asignatura = em.find(Asignatura.class, idAsignatura); + Curso curso = asignatura.getCurso(); + List<Alumno> alumnoList = em.createQuery("Select e from Alumno e where e.curso = :curso") + .setParameter("curso", curso).getResultList(); + + String nombreRed = "red_asignatura_" + idAsignatura + ".xdsl"; + Network net = new Network(); + net.readFile("redes/" + nombreRed); + + + for (Alumno alumno : alumnoList) { + + String nombreRedAlumno = "red_alumno_" + alumno.getIdAlumno() + ".xdsl"; + net.writeFile("redes/" + nombreRedAlumno); + + } + + } } diff --git a/EjercitarServer/ejbModule/beans/AdministracionBeanRemote.java b/EjercitarServer/ejbModule/beans/AdministracionBeanRemote.java index 23c553c..4f49de6 100644 --- a/EjercitarServer/ejbModule/beans/AdministracionBeanRemote.java +++ b/EjercitarServer/ejbModule/beans/AdministracionBeanRemote.java @@ -33,5 +33,9 @@ public interface AdministracionBeanRemote { public void agregarTarea(Tarea tarea, ArrayList<Concepto> conceptoList); public String getValorNodoRed(String nombre); + + public void calcularProbabilidades(int idAsignatura); + + public void crearRedAlumnos(int idAsignatura); } diff --git a/EjercitarServer/ejbModule/beans/EjercitarWSBean.java b/EjercitarServer/ejbModule/beans/EjercitarWSBean.java index 6681042..dd9ce8c 100644 --- a/EjercitarServer/ejbModule/beans/EjercitarWSBean.java +++ b/EjercitarServer/ejbModule/beans/EjercitarWSBean.java @@ -68,12 +68,13 @@ public class EjercitarWSBean implements EjercitarWSRemote { Tarea tarea = em.find(Tarea.class, idTarea);
Alumno alumno = em.find(Alumno.class, idAlumno);
//
- responderEjercicio(idEjercicio, respuesta, alumno);
+ if(idEjercicio != 0)
+ responderEjercicio(idEjercicio, respuesta, alumno);
//
Ejercicio ejercicio = seleccionAleatoria(tarea);
- seleccionUtilidadMax(tarea, alumno);
+ //seleccionUtilidadMax(tarea, alumno);
System.out.println(ejercicio.getRespuestaList().toString()); // NO BORRAR
return ejercicio;
}
@@ -85,7 +86,7 @@ public class EjercitarWSBean implements EjercitarWSRemote { net1.readFile("redes/" + nombreRed);
net1.updateBeliefs();
String nombreEjercicio = "E" + idEjercicio;
-
+ System.out.println("proba d");
if(respuesta.equals(ejercicio.getRespuesta().getDescripcion())){
net1.setEvidence(nombreEjercicio, "Correcto");
} else {
@@ -95,8 +96,9 @@ public class EjercitarWSBean implements EjercitarWSRemote { List<Concepto> conceptoList = ejercicio.getConceptoList();
for(Concepto concepto : conceptoList) {
- String nombreConcepto = "C" + concepto.getIdConcepto();
+ String nombreConcepto = concepto.getNombre();
double [] probCalc = net1.getNodeValue(nombreConcepto);
+ System.out.println("proba " + probCalc.toString());
net1.setNodeDefinition(nombreConcepto, probCalc);
}
@@ -111,7 +113,7 @@ public class EjercitarWSBean implements EjercitarWSRemote { }
private Ejercicio seleccionAleatoria(Tarea tarea) {
- Tema tema = tarea.getTema();
+ //Tema tema = tarea.getTema();
//List<Concepto> = tema.getIdConcepto()
List<Ejercicio> ejercicios = em.createQuery("SELECT e FROM Ejercicio e").getResultList();
@@ -125,9 +127,9 @@ public class EjercitarWSBean implements EjercitarWSRemote { }
private Ejercicio seleccionUtilidadMax(Tarea tarea, Alumno alumno) {
- Tema tema = tarea.getTema();
+ //Tema tema = tarea.getTema();
//List<Concepto> conceptoList = new ArrayList();
- List<Concepto> conceptoList = tema.getConceptoList();
+ List<Concepto> conceptoList = tarea.getConceptoList();
// inicializacion
diff --git a/EjercitarWeb/src/src/CargarConceptosServlet.java b/EjercitarWeb/src/src/CargarConceptosServlet.java index 383ca75..5ece417 100644 --- a/EjercitarWeb/src/src/CargarConceptosServlet.java +++ b/EjercitarWeb/src/src/CargarConceptosServlet.java @@ -76,9 +76,6 @@ public class CargarConceptosServlet extends HttpServlet { out.close(); } - //List<Concepto> conceptoList = abr.getConceptoList(idTema); - System.out.println("prueba"); - //System.out.println(conceptoList.toString()); } diff --git a/EjercitarWeb/src/src/EditarConceptoServlet.java b/EjercitarWeb/src/src/EditarConceptoServlet.java index a32854f..2a9bc0e 100644 --- a/EjercitarWeb/src/src/EditarConceptoServlet.java +++ b/EjercitarWeb/src/src/EditarConceptoServlet.java @@ -74,9 +74,7 @@ public class EditarConceptoServlet extends HttpServlet { }
else {
- //ProfesorEAO profesor = new ProfesorEAO();
- //TemaEAO tema = new TemaEAO();
- //ConceptoEAO conceptoEAO = new ConceptoEAO();
+
String adivinanza = request.getParameter("adivinanza");
String apriori = request.getParameter("a_priori");
String descuido = request.getParameter("descuido");
@@ -94,11 +92,10 @@ public class EditarConceptoServlet extends HttpServlet { Profesor profesor = em.find(Profesor.class, idProfesor);
concepto.setProfesor(profesor);
- //concepto.setProfesor(profesor.getProfesorById(idProfesor));
+
Tema tema = em.find(Tema.class, idTema);
concepto.setTema(tema);
- //concepto.setTema(tema.getTemaById(idTema));
- //conceptoEAO.guardarConcepto(concepto);
+
abr.editarConcepto(concepto);
diff --git a/EjercitarWeb/src/src/EditarTemaServlet.java b/EjercitarWeb/src/src/EditarTemaServlet.java index 73be5c3..51fc9be 100644 --- a/EjercitarWeb/src/src/EditarTemaServlet.java +++ b/EjercitarWeb/src/src/EditarTemaServlet.java @@ -48,23 +48,9 @@ public class EditarTemaServlet extends HttpServlet { // TODO Auto-generated method stub
response.setContentType("text/html;charset=UTF-8");
RequestDispatcher rd = getServletContext().getRequestDispatcher("/tema_ed.jsp");
-
- //falta filtrar las asignaturas por profesor...
-
- //int idProfesor = Integer.valueOf(request.getParameter("profesor"));
- //"Select e from Asignatura e where e.Profesor.idProfesor = :idProfe"
- Query query = em.createQuery("Select e from Asignatura e ");
-
- //Query query = em.createQuery("Select e from Asignatura e ");
- // query.setParameter("Profesor.idProfesor", idProfesor);
- List asignaturas = query.getResultList();
- request.setAttribute("lista_asignaturas", asignaturas);
-
int idTema = Integer.valueOf(request.getParameter("tema"));
- Tema tema = em.find(Tema.class, idTema);
-
+ Tema tema = em.find(Tema.class, idTema);
request.setAttribute("tema", tema);
-
rd.forward(request, response);
}
diff --git a/EjercitarWeb/src/src/IniciarCursoServlet.java b/EjercitarWeb/src/src/IniciarCursoServlet.java new file mode 100644 index 0000000..0f6644b --- /dev/null +++ b/EjercitarWeb/src/src/IniciarCursoServlet.java @@ -0,0 +1,70 @@ +package src;
+
+import java.io.IOException;
+import java.util.List;
+
+import javax.ejb.EJB;
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+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 model.Alumno;
+import model.Asignatura;
+import model.Concepto;
+import model.Curso;
+
+import beans.AdministracionBeanRemote;
+
+/**
+ * Servlet implementation class IniciarCursoServlet
+ */
+@WebServlet("/IniciarCursoServlet")
+public class IniciarCursoServlet extends HttpServlet {
+ private static final long serialVersionUID = 1L;
+
+ @PersistenceContext
+ EntityManager em;
+
+ @EJB
+ AdministracionBeanRemote abr;
+
+ /**
+ * @see HttpServlet#HttpServlet()
+ */
+ public IniciarCursoServlet() {
+ super();
+ // TODO Auto-generated constructor stub
+ }
+
+ /**
+ * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
+ */
+ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ // TODO Auto-generated method stub
+
+ response.setContentType("text/html;charset=UTF-8");
+
+
+ int idAsignatura= Integer.valueOf(request.getParameter("asignatura"));
+ Asignatura asignatura = em.find(Asignatura.class, idAsignatura);
+
+ abr.calcularProbabilidades(idAsignatura);
+
+ abr.crearRedAlumnos(idAsignatura);
+
+
+ }
+
+ /**
+ * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
+ */
+ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ // TODO Auto-generated method stub
+ }
+
+}
diff --git a/EjercitarWeb/src/src/NuevaAsignaturaServlet.java b/EjercitarWeb/src/src/NuevaAsignaturaServlet.java index 98c6cfe..c30ca53 100644 --- a/EjercitarWeb/src/src/NuevaAsignaturaServlet.java +++ b/EjercitarWeb/src/src/NuevaAsignaturaServlet.java @@ -64,7 +64,6 @@ public class NuevaAsignaturaServlet extends HttpServlet { Profesor profesor = (Profesor)request.getSession().getAttribute("profesor"); asignatura.setProfesor(profesor); int idCurso = Integer.valueOf(request.getParameter("curso")); - //Curso curso = em.find(Curso.class, 1); Curso curso = em.find(Curso.class, idCurso); asignatura.setCurso(curso); asignatura.setDescripcion(request.getParameter("descripcion")); diff --git a/EjercitarWeb/src/src/NuevaTareaServlet.java b/EjercitarWeb/src/src/NuevaTareaServlet.java index 3e4d4e3..683ce7b 100644 --- a/EjercitarWeb/src/src/NuevaTareaServlet.java +++ b/EjercitarWeb/src/src/NuevaTareaServlet.java @@ -48,12 +48,7 @@ public class NuevaTareaServlet extends HttpServlet { */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); - RequestDispatcher rd = getServletContext().getRequestDispatcher("/Tarea.jsp"); - - //Asignatura matematica = em.find(Asignatura.class, 1); // Asignatura: Matematica - - - + RequestDispatcher rd = getServletContext().getRequestDispatcher("/Tarea.jsp"); rd.forward(request, response); } @@ -71,13 +66,7 @@ public class NuevaTareaServlet extends HttpServlet { Curso curso = em.find(Curso.class, Integer.valueOf(idCurso)); System.out.println(curso.getTurno()); tarea.setCurso(curso); - - /*String idTema= request.getParameter("temas"); - System.out.println(idTema); - Tema tema = em.find(Tema.class, Integer.valueOf(idTema)); - System.out.println(tema.getDescripcion()); - tarea.setTema(tema);*/ - + String conceptos = request.getParameter("lista_conceptos"); ArrayList<Concepto> conceptoList = new ArrayList<Concepto>(); @@ -87,15 +76,13 @@ public class NuevaTareaServlet extends HttpServlet { conceptoList.add(concepto); } System.out.println("conceptooosss "+conceptoList.toString()); - //tarea.setConceptoList(conceptoList); - + String idAsignatura= request.getParameter("asignatura"); System.out.println(idAsignatura); Asignatura asignatura = em.find(Asignatura.class, Integer.valueOf(idAsignatura)); System.out.println(asignatura.getDescripcion()); tarea.setAsignatura(asignatura); - - + abr.agregarTarea(tarea,conceptoList); response.sendRedirect("/EjercitarWeb/VistaAsignaturaServlet?asignatura=" + idAsignatura); diff --git a/EjercitarWeb/src/src/NuevoConceptoServlet.java b/EjercitarWeb/src/src/NuevoConceptoServlet.java index d03f10c..af43b60 100644 --- a/EjercitarWeb/src/src/NuevoConceptoServlet.java +++ b/EjercitarWeb/src/src/NuevoConceptoServlet.java @@ -16,6 +16,7 @@ import javax.servlet.http.HttpServletResponse; import beans.AdministracionBeanRemote; +import model.Asignatura; import model.Concepto; import model.Ejercicio; import model.Profesor; @@ -49,10 +50,11 @@ public class NuevoConceptoServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub response.setContentType("text/html;charset=UTF-8"); - RequestDispatcher rd = getServletContext().getRequestDispatcher("/Concepto.jsp"); - - - List temas = em.createQuery("Select e from Tema e").getResultList(); + RequestDispatcher rd = getServletContext().getRequestDispatcher("/Concepto.jsp"); + int idAsignatura = Integer.valueOf(request.getParameter("asignatura")); + Asignatura asignatura = em.find(Asignatura.class, idAsignatura); + List temas = em.createQuery("Select e from Tema e where e.asignatura = :asignatura") + .setParameter("asignatura", asignatura).getResultList(); request.setAttribute("lista_temas", temas); rd.forward(request, response); } diff --git a/EjercitarWeb/src/src/NuevoEjercicioServlet.java b/EjercitarWeb/src/src/NuevoEjercicioServlet.java index 621b0a3..52ef355 100644 --- a/EjercitarWeb/src/src/NuevoEjercicioServlet.java +++ b/EjercitarWeb/src/src/NuevoEjercicioServlet.java @@ -52,14 +52,6 @@ public class NuevoEjercicioServlet extends HttpServlet { // TODO Auto-generated method stub response.setContentType("text/html;charset=UTF-8"); RequestDispatcher rd = getServletContext().getRequestDispatcher("/Ejercicios.jsp"); - - int idAsignatura = Integer.valueOf(request.getParameter("asignatura")); - Asignatura asignatura = em.find(Asignatura.class, idAsignatura); - - List<Tema> temaList = em.createQuery("Select e from Tema e where e.asignatura = :asignatura") - .setParameter("asignatura", asignatura).getResultList(); - - request.setAttribute("lista_temas", temaList); rd.forward(request, response); } diff --git a/EjercitarWeb/src/src/NuevoTemaServlet.java b/EjercitarWeb/src/src/NuevoTemaServlet.java index 3a997f7..4956268 100644 --- a/EjercitarWeb/src/src/NuevoTemaServlet.java +++ b/EjercitarWeb/src/src/NuevoTemaServlet.java @@ -50,17 +50,6 @@ public class NuevoTemaServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); RequestDispatcher rd = getServletContext().getRequestDispatcher("/Tema.jsp"); - - //falta filtrar las asignaturas por profesor... - - //int idProfesor = Integer.valueOf(request.getParameter("profesor")); - //"Select e from Asignatura e where e.Profesor.idProfesor = :idProfe" - Query query = em.createQuery("Select e from Asignatura e "); - - //Query query = em.createQuery("Select e from Asignatura e "); - // query.setParameter("Profesor.idProfesor", idProfesor); - List asignaturas = query.getResultList(); - request.setAttribute("lista_asignaturas", asignaturas); rd.forward(request, response); } |