• Viernes 8 de Noviembre de 2024, 19:20

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - laurita_85_

Páginas: [1]
1
JSP/Servlets / Re: Problema JSP
« en: Martes 21 de Diciembre de 2010, 16:47 »
Gracias por la respuesta :), el sql no lo tengo en un xml, tengo mi base de datos en mysql y accedo a la informacion con el método descrito anteriormente de mi servicio web(.jws) sobre axis.

¿Es correcto entonces en el cliente  para una clase propia lo siguiente?:

call.setReturnType (XMLType.SOAP_VECTOR);
Vector<Descripcion> ret = (Vector<Descripcion>) call.invoke (new Object [] {sql});

Muchas gracias de nuevo!

2
JSP/Servlets / Re: Problema JSP
« en: Lunes 20 de Diciembre de 2010, 18:37 »
El error está en esta linea:

Vector<Descripcion> ret = (Vector<Descripcion>) call.invoke (new Object [] {sql});

supongo que el problema está al devolver el objeto de mi clase propia Descripcion, el método del servicio web al que estoy llamando es el siguiente:

public Vector<Descripcion> obtenerObjetivosVector(String sql) throws Exception
    {
            this.Conectar();

            Statement stmt;
            ResultSet res = null;

            String [] columnas;
            Vector<Descripcion> resultados = new Vector<Descripcion>();
 
try
            {
                stmt = conn.createStatement();

                    res  = stmt.executeQuery(sql);


                    while(res.next())
                    {
                        Descripcion desc = new Descripcion();
      String [] columnas= desc.getColumnas();
                       
       String dato0 = res.getString(columnas[0]);
                        desc.setId(dato0);
                        String dato1 = res.getString(columnas[1]);
                        desc.setCurso(dato1);
                        String dato2 = res.getString(columnas[2]);
                        desc.setCreditos(dato2);
                        String dato3 = res.getString(columnas[3]);
                        desc.setSemestre(dato3);
      String dato4 = res.getString(columnas[4]);
                        desc.setHorasSemana(dato4);
                        String dato5 = res.getString(columnas[5]);
                        desc.setHorario(dato5);
                        String dato6 = res.getString(columnas[6]);
                        desc.setGrupo(dato6);
                        String dato7 = res.getString(columnas[7]);
                        desc.setAulaT(dato7);
                        String dato8 = res.getString(columnas[8]);
                        desc.setAulaP(dato8);
                        String dato9 = res.getString(columnas[9]);
                        desc.setProfesores(dato9);
                       
                        resultados.add(desc);
         
                    }


                res.close();
                stmt.close();
            }
            catch (SQLException e)
            {
                // TODO Auto-generated catch block
            }

            this.Desconectar();

            return resultados;


           
    }

¿Estoy comentiendo algun error al hacer el call.invoke para este tipo de datos?¿Cómo se puede hacer para una clase propia?

Gracias nuevamente

3
JSP/Servlets / Re: Problema JSP
« en: Lunes 13 de Diciembre de 2010, 21:20 »
Muchas gracias!!

Había probado a imprimirla peror staba poniendolo mal. Ahora si que me muestra el siguiente error:

; nested exception is:
   org.xml.sax.SAXParseException: Premature end of file.

Aún no se a que se puede deber, ¿alguna idea? Seguire investigando xD. Muchisimas gracias por la respuesta!

4
JSP/Servlets / Problema JSP
« en: Domingo 12 de Diciembre de 2010, 22:37 »
Hola buenas tardes, me ha surgido un problema y agradecería mucho una ayuda.

Estoy desarrollando una aplicación web con jsp, los jsp acceden a un servicio web en java que comunica con una base de datos en MySQL. El problema le tengo al llamar a un método del servicio web que devuelve objetos Vector<Descripcion> siendo Descripcion una clase con una serie de atributos a los que quiero acceder desde la jsp.
El código de la jsp es el siguiente:

<%@page import="org.apache.axis.client.Call"%>
<%@page import="org.apache.axis.client.Service"%>
<%@page import="org.apache.axis.encoding.XMLType"%>
<%@page import="java.util.Vector"%>
<%@page import="java.util.ArrayList"%>
<%@page import="java.util.*"%>
<%@page import="javax.xml.rpc.ParameterMode"%>
<%@page import="servidor.Descripcion"%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>

<table>
<%
try {


String sql="aqui va la sentencia sql";
String endpoint="url del servicio web con extensión .jws ";
Service service = new Service ();
Call call = (Call) service.createCall ();
call.setTargetEndpointAddress(new java.net.URL(endpoint));

call.setOperationName("obtenerBreveDescripcionVector");

call.addParameter( "sql", XMLType.XSD_STRING, ParameterMode.IN );

call.setReturnType (XMLType.SOAP_VECTOR);
Vector<Descripcion> ret = (Vector<Descripcion>) call.invoke (new Object [] {sql});

for(int i=0; i<ret.size(); i++){

String id=ret.get(i).getId();
String curso = (String)ret.get(i).getCurso();
String creditos = ret.get(i).getCreditos();
String semestre = ret.get(i).getSemestre();
String horas = ret.get(i).getHorasSemana();
String horario = ret.get(i).getHorario();
String grupo = ret.get(i).getGrupo();
String aulaT = ret.get(i).getAulaT();
String aulaP = ret.get(i).getAulaP();
String profesores = ret.get(i).getProfesores();

out.println("<tr><td>Curso</td><td>"+curso+"</td></tr><tr><td>Créditos</td><td>"+creditos+"</td></tr><tr><td>Semestre</td><td>"+semestre+"</td></tr><tr><td>Horas/Semana</td><td>"+horas+"</td></tr><tr><td>Horario</td><td>"+horario+"</td></tr><tr><td>Grupo</td><td>"+grupo+"</td></tr><tr><td>Aula de teoría</td><td>"+aulaT+"</td></tr><tr><td>Aula de prácticas</td><td>"+aulaP+"</td></tr><tr><td>Profesores</td><td>"+profesores+"</td></tr>");

}

catch (Exception ex) {
// TODO handle custom exceptions here
}
%>
<br>
<br>
<br>
</table>
</body>
</html>


Basicamente la duda que tengo debería estar en las siguientes lineas:

call.setReturnType (XMLType.SOAP_VECTOR);
Vector<Descripcion> ret = (Vector<Descripcion>) call.invoke (new Object [] {sql});

No se si es correcta la invocación para un Vector de objetos de una clase propia, no me da ningun error simplemente me muestra la jsp en blanco. El acceso del servicio web a la base de datos es correcto, el problema debería estar en este código.


Muchisimas gracias,

Un saludo.

Páginas: [1]