Java - duda para crear el promedio por año de un alumno

   
Vista:
Imágen de perfil de enrique

duda para crear el promedio por año de un alumno

Publicado por enrique (7 intervenciones) el 28/11/2016 17:03:03
Buen dia compañeros tengo un problema con una opcion de una aplicacion web, que genera el promedio por año de un alumno, pero me genera el promedio de todos los años que tengo registrados eso ya esta solucionado el problema es que le modifique al codigo de la aplicacion en donde utilizaron json que es el que pone la calificacion en el cuadro de texto, ya no lo pone y no se como solucionarlo


codigo del jsp en donde busco al alumno

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<h2><legend> CONSULTA DE AÑO *****</legend></h2>
               <br>
               <p>
 
                            <label for="curp" accesskey="c">Curp: <small>( Requerido ) </small> </label>
 
                            <input type="text" id="curp" name="curp" tabindex="1" value="" title="curp" />
 
                       </p>
 
                       <p>
                     grado: </td><td> <select name="grado1">
                            <option value="1" selected>1
                            <option value="2">2
                            <option value="3">3
                            <option value="4">4
                            <option value="5">5
                            <option value="6">6
 
                        </select>
                     </p>
 
                    <p>
                        <input type="submit" value="Consulta" name ="guardar1" id="guardar1" class="button" tabindex="5" onclick="return validarConsulta(this);"/>
                    </p>

codigo del jsp del alta de año escolar

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<center>
 
                                <h2><legend> REGISTRO DE AÑO </legend></h2>
                            </center>
                            <br>
                            <p>
 
                                <label for="curp" >CURP: <small> </small> </label>
 
                                <b><%=infalumno.getCurp()%></b>
 
                            </p>
                            <p>
 
                                <label for="nombre" accesskey="n">Nombre: <small></small> </label>
 
                                <b><%=infalumno.getNombre()%></b>
 
                            </p>
                            <p>
 
                                <label for="apellido " accesskey="aP">Apellido Paterno: <small> </small> </label>
 
                                <b><%=infalumno.getApellido_p()%></b>
 
                            </p>
                            <p>
 
                                <label for="apellidoMaterno" accesskey="aM">Apellido Materno: <small> </small> </label>
 
                                <b> <%=infalumno.getApellido_m()%></b>
 
                            </p>
 
 
                            <p>
 
                                <label for="cct" accesskey="d">CCT: <small></small> </label>
 
                                <b> <%=infalumno.getCct()%></b>
 
                            </p>
                            <p>
                                <label for="grado" accesskey="g">Grado: <small></small></label>
                                <b> <%=infalumno.getGrado()%></b>
                            </p>
                            <p>
                                <label for="grupo" accesskey="gp">Grupo: <small></small></label>
                                <b> <%=infalumno.getGrupo()%></b>
                            </p>
 
 
                            <p>
                                Ciclo Escolar: </td><td> <select  name="fecha"   onChange="valAnterior(this.value);">
                                    <option value="">Selecciona</option>
                                    <option value="2012-2013">2012-2013</option>
                                    <option value="2013-2014">2013-2014</option>
                                    <option value="2014-2015">2014-2015</option>
                                    <option value="2015-2016">2015-2016</option>
                                    <option value="2016-2017">2016-2017</option>
                                    <option value="2017-2018">2017-2018</option>
                                    <option value="2019-2020">2019-2020</option>
 
                                </select>
                                </p>
 
                                <p>
                                <div id="calificacion" >
                                    <label for="calificacionnu" accesskey="cn">Promedio: <small></small> </label>
 
                                    <input type="text" id="calificacionnu" name="calificacionnu"  value="" title="calificacionnu" style="text-transform:uppercase;"/>
                                </div>
                                </p>
 
                                <p hidden>
 
                                    <label for="idalumno" accesskey="ia">Id alumno: <small></small> </label>
 
                                    <input type="text" id="idalumno" name="idalumno"  value="<%= infalumno.getFolio()%>" readonly />
 
                                </p>
                                <p>
 
                                    <label for="idnivel" accesskey="in">Id nivel: <small></small> </label>
 
                                    <br>
                                    <input type="Radio" name="idnivel" value= "1" checked>Preescolar
                                    <br/>
                                    <input type="Radio" name= "idnivel"value="2">Primaria
                                    <br/>
                                    <input type="Radio" name= "idnivel"value="3">Secundaria
                                    <br/>
                                </p>
 
                            <center>
 
 
                                <p>
                                    <input type="submit" value="Guardar" name ="guardar1" id="submit" class="button" tabindex="20" onclick=""/>
                                </p>
                            </center>

este es el codigo de json

1
2
3
4
5
6
7
8
9
10
11
12
jsonrpc = new JSONRpcClient('/Proyecto_final1/JSON-RPC');
 
function valAnterior(value){
 
    /*Obtengo el id del Alumno desde el jsp*/
    var idAlumno  =  document.getElementById("idalumno").value;
 
/*Se manda llamar al metodo que realiza el promedio*/
     var respuesta= jsonrpc.Dao_calificacion.calificacion(value,idAlumno);
    document.getElementById("calificacionnu").value=respuesta;
 
}

este es del dao en donde genero el promedio y tengo que tener el grado para que me genere el promedio del año que requiero no de todos los años

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
public float calificacion(String ciclo, int id_alumno
            ) {
        System.out.println("entra al dao desde el js");
        System.out.println("año -> " + ciclo);
        System.out.println("id alumno -> " + id_alumno);
 
        float calificacion = 0;
        bandera = -1;
        Conexion con = new Conexion(Configuracion.Servidor, Configuracion.Usuario, Configuracion.Contrasena, Configuracion.BD, Configuracion.Puerto);
        conexion = con.getConexion();
        if (conexion != null) {
            try {
                conexion.setAutoCommit(false);
                String sql = "select avg(calificacion) as calificacion from calificacion,antecedentes where alumnos_idalumnos=antecedentes_alumnos_idalumnos and antecedentes_alumnos_idalumnos=" + id_alumno + " and ciclo_escolar='" + ciclo + "'";
                System.out.println(sql);
                statement = con.getConexion().prepareStatement(sql);
                ResultSet result = statement.executeQuery();
                while (result.next()) {
                    calificacion = result.getInt("calificacion");
                }
            } catch (Exception e) {
                System.out.println("alumno.modificaAlumnos-2: " + e.getMessage());
                try {
                    conexion.rollback();
                } catch (SQLException error) {
                    System.out.println("alumno.modificaAlumnos.rollback: " + error.getMessage());
                }
                con.cerrarConexion();
            } finally {
                con.cerrarConexion();
            }
        }
        return calificacion;
    }
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Lawliet

duda para crear el promedio por año de un alumno

Publicado por Lawliet zhapyro_5@hotmail.com (249 intervenciones) el 28/11/2016 18:22:23
Hola...

Serías tan amable de indicar el error que te aparece en el Output, de esa manera será más fácil ayudarte.

Gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de enrique

duda para crear el promedio por año de un alumno

Publicado por enrique (7 intervenciones) el 28/11/2016 18:30:04
aparece esto

nov 28, 2016 10:00:36 AM org.apache.catalina.session.StandardSession writeObject
ADVERTENCIA: No puedo serializar atributo de sesión JSONRPCBridge para sesión D0763BE4D249DF33A9E2EFA8BFE26638
java.io.NotSerializableException: Modelo.Dao_calificacion
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1183)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:347)
at java.util.HashMap.writeObject(HashMap.java:1129)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:988)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1495)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:347)
at org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1671)
at org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:1077)
at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:432)
at org.apache.catalina.session.StandardManager.unload(StandardManager.java:353)
at org.apache.catalina.session.StandardManager.stopInternal(StandardManager.java:518)
at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5462)
at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
at org.apache.catalina.core.StandardContext.reload(StandardContext.java:3901)
at org.apache.catalina.manager.ManagerServlet.reload(ManagerServlet.java:949)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:360)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:581)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:999)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar