AppNotas es una aplicación web Java EE para registrar usuarios, administrar categorías y gestionar notas personales. El proyecto fue creado originalmente en 2020 y su runtime legacy fue restaurado y validado de forma controlada en 2026.
- Registro público de usuarios de tipo Operario (
O). - Login y logout con sesión HTTP.
- Contraseñas almacenadas mediante PBKDF2.
- Rechazo de usuarios inactivos.
- Protección de rutas bajo
/protegido/*y prevención de caché. - Separación de usuarios Admin (
A) y Operario (O). - Acceso a
/protegido/admin/*autorizado únicamente para Admin. - Creación, edición y activación/desactivación de categorías.
- Creación, listado, edición y eliminación de notas propias.
- Asociación de cada nota con la Persona autenticada y validación de ownership en servidor.
- Java 8
- Maven 3.9.16
- GlassFish 4.1.2
- MySQL 5.7.44
- Java EE 7, JSF, PrimeFaces 8, EJB y JPA/EclipseLink
Las versiones anteriores forman la baseline validada. Una modernización debe realizarse en una fase separada.
Con Java 8 y Maven disponibles:
mvn clean packageEl WAR se genera como:
target/AppNotas-1.0.0-legacy-restored.war
- Crear una base MySQL vacía llamada
appnotas_legacy. - Crear un usuario de base de datos con privilegios mínimos sobre esa base.
- Instalar MySQL Connector/J 5.1.49 en el directorio de librerías del dominio GlassFish.
- Configurar un connection pool de GlassFish contra
appnotas_legacy. - Exponer ese pool mediante el recurso JNDI
jdbc/note. - Desplegar
target/AppNotas-1.0.0-legacy-restored.war.
La aplicación queda disponible en:
http://<APP_HOST>:<APP_PORT>/AppNotas-1.0-SNAPSHOT/
El context root conserva intencionalmente el nombre histórico
/AppNotas-1.0-SNAPSHOT para mantener compatibilidad con las rutas validadas;
no representa la versión Maven del artefacto final.
Las credenciales de MySQL y la configuración específica de cada entorno deben mantenerse fuera del repositorio. No se deben versionar contraseñas, backups ni archivos de datos.
La guía técnica detallada está en docs/LEGACY_RUNTIME.md.
legacy-2020: tag que preserva el commit original.master: baseline original sin modificar.rescue/legacy-runtime: restauración funcional y de seguridad.
El modelo original contiene comentarioAdmin y valorizacion en Nota, pero
no define su semántica, rango ni flujo funcional. No se implementó lógica para
esos campos con el fin de evitar inventar reglas de negocio.