/crud-servlet-jsp

Un sistema crud web basado en servlets Java.

Primary LanguageJava

Sistema CRUD de Envíos de Comida

Un sistema crud web basado desarrollado con Java, MySQL y HTML, usando Servlets y JSPs.

Requisitos Previos

Los siguientes elementos son necesarios para poder ejecutar el proyecto:

  • Java SE 8 o posterior
  • Apache NetBeans 12.5 o posterior
  • MySQL (MariaDB 10.4.24)
  • Servidor GlassFish 4.0 o posterior

Comenzar

Primero, es necesario obtener los archivos del proyecto ejecutando los siguientes comandos Git:

git clone https://github.com/Frozen-Burrito/crud-servlet-jsp sistema-crud

Esto debería crear el directorio sistema-crud, que puede ser abierto como un proyecto en NetBeans.

Configurar la BD

Hace falta configurar la BD misma desde XAMPP y agregar configuración al proyecto de NetBeans para poder lograr que se conecte a la BD.

  1. Crear una base de datos nueva en phpMyAdmin.

  2. Descargar el archivo .sql de la BD (que está en el drive, para Belén) e importarlo en la base de datos nueva en phpMyAdmin:

image

  1. Asegurar que el usuario local de la base de datos requiere una contraseña (es necesario para la conexión con NetBeans). Si no tiene contraseña, configurarla en la sección "Editar Privilegios" de la página de la base de datos:

image

Crear String de Conexión a BD

  1. En NetBeans, en la pestaña de Servicios > Bases de Datos, crear una nueva conexión a una base de datos haciendo click derecho en la sección de databases y seleccionando "Nueva Conexión...":

image

  1. Seleccionar "MySQL (Connector / J Driver)" como driver y localizar el archivo .jar del driver de MySQL. (Revisar ubicación, porque es determinada por Maven):

image

  1. En la siguiente página, especificar el nombre de la BD en el campo "Base de datos". Asegurar que el username y el password sean correctos. Si la conexión es incorrecta y falla, no podrás avanzar al siguiente paso.

image

  1. Omitir la selección de esquema de base de datos.
  2. Elegir un nombre significativo para el string de conexión.

image

  1. Hacer click en "Terminar". En la pestaña de Servicios, en la sección de Bases de Datos, debería aparecer la conexión creada, incluyendo las tablas existentes:

image

Recurso JDBC y Pool de Conexiones

Troubleshoot

No se muestran los recursos JDBC

En teoría, el archivo glassfish-resources.xml es desplegado de forma automática en el servidor de Glassfish, pero no siempre es el caso. Esto puede confirmarse si, desde la pestaña de Servicios en NetBeans, en su sección de Servidores > Glassfish > Recursos > JDBC > Recursos JDBC no se muestra el recurso JDBC para el DataSource de la aplicación.

image

Si no se muestra jdbc/dataSourcePrincipal será necesario subir el archivo glassfish-resources.xml manualmente al servidor. Esto se puede hacer de dos maneras:

  1. En el servicio de administración de Glassfish en http://localhost:4848, navegando a la sección `` y seleccionando el archivo glassfish-resources.xml del proyecto.

  2. Abriendo un cmd en el directorio de instalación de GlassFish (por ejemplo, "C:\Program Files\glassfish-4.1\bin"), para luego ejecutar el siguiente comando:

asadmin add-resources [directorio de glassfish-resources.xml]

MySQL en XAMPP no inicia

Puede que al intentar iniciar MySQL desde el panel de control de XAMPP, se produzca este error:

image

Para resolverlo, probar si se puede conectar o iniciar MySQL desde el shell del propio XAMPP. Si es así, lo más probable es que haya otra instancia de MySQL ya ejecutándose.

Si tal cual no se puede solucionar, como último recurso se puede desinstalar y volver a instalar XAMPP.

Error de Conexión en phpMyAdmin

Si después de cambiar o configurar la contraseña de usuario para MySQL, sale el siguiente error en phpMyAdmin:

image

Abrir el archivo config.inc.php desde el panel de control de XAMPP y comprobar que la contraseña (en la línea "password") sea la correcta:

image

image

Excepción WELD-000227

Si, al estar desarrollando y desplegando la aplicación con cambios, surge el siguiente error HTTP 500:

image

Para solucionarlo, solo hace falta detener el servidor y volverlo a iniciar.

Recursos Útiles

Crear una App Web con Java y MySQL

Referencia de API de HttpServlet

Filtros en Java EE

Agregar recursos en Glassfish