Antes de comenzar, debe completar el Ejercicio 2.3: Uso del componente subida de archivos.
Con la forma en que está configurada la página new_record.jsp, el usuario debe tener cuidado de no entrar un número de ID que ya esté en uso, porque cada registro de la base de datos debe tener un número de ID exclusivo. Esto se explicó más detalladamente en el Ejercicio 1.4: Creación de registros nuevos. En resumen, debe evitar que el usuario cometa este error.
En el ejercicio siguiente, Ejercicio 2.5: Uso de la generación automática de claves, se utilizará la generación automática de claves para evitar tener que entrar el ID. En este ejercicio, se comprobará si el ID entrado es único y, si no lo fuera, redirigirá a una página de error que explique el problema y le diga al usuario cómo solucionarlo.
Las Reglas de navegación permiten dirigir al usuario a la página de error o a la página all_records.jsp tras comprobar si el usuario ha entrado o no un número de ID duplicado. Asignaremos alias a estos dos resultados posibles y luego enlazaremos los alias a las páginas de destino correctas. En este ejemplo, a un error en la página create_record.jsp le pondremos el alias ERROR_CREATE (ERROR EN LA CREACIÓN), el cual enviará al usuario a la página de error. Si el usuario rellena correctamente la página create_record.jsp, asignaremos el alias MAIN (PÁGINA PRINCIPAL), que accederá a la página all_records.jsp, como hacía antes.
La primera regla enviará al usuario a la página de error create_error.jsp en caso de que algo haya ido mal en la creación y confirmación del registro nuevo en la base de datos.
Si el usuario ha entrado un número de ID válido, la regla siguiente llevará a la página all_records.jsp.
Todo lo que resta es hacer utilizar las reglas nuevas de navegación. Añadiremos dos sentencias return al código del botón Publicar listado nuevo. Estas sentencias return invocan el alias correspondiente de forma que el usuario verá la página que se haya configurado en la regla de navegación.
Esta función catch se ejecuta si el usuario ha entrado un número de ID duplicado.
El código del botón quedaría de la siguiente manera:
También puede crear una página de error sencilla denominada create_error.jsp que explique al usuario que se ha producido un error en la creación del listado y que intente entrar un valor distinto para el ID. Podrá entonces probar estas reglas de navegación intentando añadir un listado nuevo que utilice un valor de ID existente (como por ejemplo 1).
Ya puede continuar con el Ejercicio 2.5: Uso de la generación automática de claves.