Gestión errores en JSPs

0
31541

Aspectos intermedios en JSPs

En este capitulo vamos a hablar de otros aspectos más avanzados a la hora de
desarrollar JSP como

  • Comentarios
  • Gestión de errores
  • Formateo de Fechas
  • Precompilación de Ficheros

Comentarios

Hay veces que queremos que un código JSP no se ejecute sin borrarlo… para
eso podemos usar comentarios

<%@page contentType=»text/html» errorPage=»jsperror.jsp» %>
<html>
<head><title>JSP Page</title></head>
<body>

Este código si se ejecutará

<%– Este código no se ejecutara 

<% int x=10, y=0;

out.write(«El resultado es: » + (x/y));

%>

–%>
</body>
</html>

La salida de nuestro programa, como es de esperar.. será … 

Gestión de Errores

Cuando ejecutamos un JSP, podría quedar bastante mál que apareciera un
error técnico a un usuario final …… 

Vamos a crear un JSP para mostraros el efecto

<%@page contentType=»text/html»%>
<html>
<head><title>JSP Page</title></head>
<body>

<% int x=10, y=0;

out.write(«El resultado es: » + (x/y));

%>
</body>
</html>

 

Vamos en este caso a ser un poco más políticos y vamos a crear
una página para mostrar en el caso de que se produzca un error de este estilo.
También debemos pensar en la seguridad porque …. alguien con conocimientos
avanzados podría obtener demasiada información y tratar de atacar nuestro
sistema.

Creamos una página de error, añadiendo un atributo a un JSP
….

<%@page contentType=»text/html» isErrorPage=»true» %>
<html>
<head><title>JSP Page</title></head>
<body>
<center>
<h1>Error Interno</H1>
<h2>Contacte con el administrador para más información</H2>

</center>
</body>
</html>

Ahora en nuestra página original, especificamos que ésta será nuestra
página de error.

<%@page contentType=»text/html» errorPage=»jsperror.jsp» %>
<html>
<head><title>JSP Page</title></head>
<body>

<% int x=10, y=0;

out.write(«El resultado es: » + (x/y));

%>
</body>
</html>

Y el resultado es:

Formateo de Fechas

Algo tan simple como formatear adecuadamente una fecha… hay
veces que da problemas (sobre todo por no encontrar un ejemplo sencillo).

<%@page contentType=»text/html» import=»java.util.*,java.text.*» %>
<html>
<head><title>JSP Page</title></head>
<body>

Formateamos la Fecha: <br>

<% 
Date ahora = new Date();
SimpleDateFormat formateador = new SimpleDateFormat(«dd-MM-yyyy HH:mm»);
out.print(«La fecha actual es: » + formateador.format(ahora));

%>

</body>
</html>

Otras salidas

Si queremos generar excel

<%@page contentType=»application/vnd.ms-excel» 
%>
<% for (int i=0 ; i<20; i++)
{
for(int j=0;j<10;j++)
{
out.write(«» + i+j + «\t» );
}
out.write(«\n»);
}
%>

Precompilación de ficheros JSP

Existe la posibilidad, fundamentalmente el contendores de JSP de
ordenar la pre-compilacion de un JSP en su respectivo servlet.

Esto se puede hacer de un modo tan simple como añadir ?jsp_precompile
después de nuestra petición. Con esto se trata de reducir el tiempo necesario
para de la primera petición que realizasen nuestro clientes

Tambien, para mejorar el rendimiento e incluso la
seguridad,  podemos utilizar en la linea de comando  jspc para
generar el código Java equivalente a nuestro JSP y posteriormente registrar la
clases como un servlet normal.

 

Sobre el
Autor ..

Dejar respuesta

Please enter your comment!
Please enter your name here