ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Práctica. Conexión de servicios soap con bases de datos mysql


Enviado por   •  13 de Junio de 2021  •  Práctica o problema  •  870 Palabras (4 Páginas)  •  210 Visitas

Página 1 de 4

Práctica. Conexión de servicios soap con bases de datos mysql

Profesora: M. en C. Jazmín Rodríguez Flores

Septiembre-diciembre 2020

Nombre alumno: _____________________________________

Fecha: ____________

Objetivo

El alumno realizará un formulario en Java que se conecta a una base de datos en Mysql usando un servicio de tipo SOAP.

Instrucciones: Se utilizará el paquete dado pkgfuncionalidad.  Deberá reportar en un pdf su aplicación con el formulario funcionando 

PRECONDICIONES

Utilizar el Netbeans 8.2, o Eclipse, mysql.

Desarrollo

El contenido del paquete funcionalidad

[pic 1]

  • La clase Conexión permite establecer el driver, la contraseña y el password de la conexión, permitiría conectarse a cualquier base de datos cambiando la URL, y el driver.
  • La clase Tester tiene instrucciones de ejemplo de como usar las clases MDB
  • La clase MDBExtendido es una extensión de la clase MDB y si se necesitan más métodos se agregan aquí

  • La clase MDB permite obtener los metadatos de la bd (los metadatos son los datos de los datos como el nombre de la tabla, el nombre de los campos).
  1. Crear una aplicación de tipo WEB

[pic 2]

  1. Poner nombre significativo

[pic 3]

  1. Seleccionar el servidor de aplicaciones, y terminar. Se recomienda que ejecute la aplicación hasta que vea la página de inicio y verifique que su servidor y proyecto son soportados.
  2. Deberá buscar la carpeta del proyecto en su disco duro, normalmente en \NetbeansProjects\nombre_Proyecto (WSBD_SOA) después deberá pegar la carpeta de pkgmodelo en la carpeta src\java una vez realizado esto se verá reflejado en el código fuente. También podrá realizarlo desde netbeans al importar archivo.

[pic 4] [pic 5]

  1. Agregar la librería de netbeans de mysql, o una externa de mysql. Puede usar las tablas que utilizó en la práctica de FACADE_REST.
  1. Se agrega sobre librerías agregar librería si es la default de netbeans

[pic 6][pic 7]

  1.  jar/folder si es otra versión diferente a la default.

 

[pic 8]

[pic 9]

  1. Modificar la clase MDB con sus datos de url, usuario y psw. NOTA: también podría modificar el driver sino usa mysql.
  2. Modificar la clase tester: el método agregar para verificar que todo funcione bien.
  1. En mi caso tengo una base de datos bddatos, que tiene una tbusuarios con 5 campos, el primero AUTOINC, VARCHAR, VARCHAR, VARCHAR, ENTERO. Recordar que los autoincrementales no se asignan, los varchar van entre apostrofes y los números no llevan apostrofes.

[pic 10]

  1.  Esa la usaremos en la clase conexión y para probar la conexión con la clase tester.  Mi línea modificada queda

jdbc:mysql://localhost:3306/bddatos?

  1. Se modifica la clase tester para probar el método registrar alta, el mío queda como sigue y mi cadena queda

leyenda= administradorBD.registrarAlta("tbUsuarios", "null, 'Pepe','González','Pérez',1234");

                System.out.println(leyenda);

  1. Con los datos modificados, ya puedo correr esta clase tester. Si todo salió bien manda el mensaje de datos almacenados exitosamente.

run:

Datos almacenados exitosamente.

BUILD SUCCESSFUL (total time: 2 seconds)

  1. Sino lo hizo bien el programa le devuelve el error así que deberá resolverlo. El mensaje le explica el error. Los más comunes:

Línea de código

Error

Solución

leyenda= administradorBD.registrarAlta("tbUsuarios", "10, 'Pepe','González','Pérez',123,1234");

java.sql.SQLException: Column count doesn't match value count at row 1

INSERT INTO tbUsuarios (idtbUsuarios,nombre,apPaterno,apMaterno,codigoAceso) VALUES (10, 'Pepe','González','Pérez',123,1234)

BUILD SUCCESSFUL (total time: 3 seconds)

Tiene una columna de más en la línea de código y no existe en la bd

Sin driver

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)

        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)

Poner driver correcto

Driver incorrecto de mysql

java.sql.SQLException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long

        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074)

        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:988)

        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:974)

Poner driver de otra versión

...

Descargar como (para miembros actualizados) txt (6 Kb) pdf (1 Mb) docx (1 Mb)
Leer 3 páginas más »
Disponible sólo en Clubensayos.com