private Element crearEstructuraXML() { Element historialNotas = new Element(ConstantesArchivosXML.SUPERPADRE); Query q = entityManager.createQuery(ConsultasJpql.HISTORIAL_NOTAS_ESTUDIANTES); @SuppressWarnings("unchecked") List<Usuario> usuarios = (List<Usuario>) q.getResultList(); for (Usuario usuario : usuarios) { Element usuarioXML = crearXMLUsuario(usuario); Query q2 = entityManager.createQuery(ConsultasJpql.HISTORIAL_NOTAS); q2.setParameter("parametro", usuario.getId()); @SuppressWarnings("unchecked") List<HistorialNotas> notasCurso = (List<HistorialNotas>) q2.getResultList(); for (HistorialNotas curso : notasCurso) { Element cursoXML = crearXMLCurso( curso.getGrupoCurso().getCursoGrupo(), curso.getNota(), curso.getGrupoCurso().getIdGrupo(), curso.getGrupoCurso().getSemestre()); usuarioXML.addContent(cursoXML); } historialNotas.addContent(usuarioXML); } return historialNotas; }