Directivas JSP - JSP (Parte 2)

Las directivas JSP nos permiten configurar alguna información que pueda ser usada en nuestra página JSP, por ejemplo cosas como importar clases, definir una página de error, incluir una página JSP en otra, en fin.
En este post hablaré de las tres directivas que existen en JSP:

  • Page
  • Include
  • TagLib

Para ello, crea el proyecto DirectivasJSP:


Directiva Page.

Se utiliza para establecer algunas propiedades a nuestra página jsp. Tiene los siguientes atributos: import, sesión, buffer, autoflush, isThreadSafe, erroPage, entre otros.

°°° Ejemplo - Atributo import de la directiva Page

Nos permite importar una clase Java en una JSP. Para el ejemplo, crea la clase ClaseDeEjemplo en el paquete ejemplo:

 

No hay nada importante que explicar en el código anterior. Ahora en nuestra index.jsp:
 
En el código anterior importamos la clase y ejecutamos uno de los métodos de esa clase.
La clase fué importada por medio de la línea:
 
El resultado que obtenemos es:

°°° Ejemplo - Atributos isErrorPage y errorPage de la directiva Page

Digamos que en nuestra index.jsp tenemos este codigo:
 

Si la ejecutas vas a obtener una excepción, pues es imposible convertir una cadena de caracteres en un valor entero:

Pero digamos que en vez de mostrar ese error del servidor, yo quisiera mostrar mi propia página de error, así que crea paginaDeError.jsp en tu proyecto:


 

La línea importante del anterior código es:
 
En ella estamos diciendo que "paginaDeError.jsp" será nuestra pagina de error, así de simple.
Pero para poder usar esa página de error, nuestro index.jsp tiene que hacer uso de ella con la linea:
 

Nuestro index.jsp, se ve asi:
 
Ejecutamos y obtenemos esto:

Como ves, se ejecutó nuestra paginaDeError.jsp.


Directiva Include.

Nos permite insertar contenido de otro archivo en una jsp. Veamos el ejemplo, crea el archivo “header.jsp”:

Cuyo contenido es este (Si… solamente es esa linea):
 
Ahora nuestra index.jsp:
 
En el código anterior, simplemente, incluimos el archivo “header.jsp” en nuestra “index.jsp” con la linea:
 
Obtenemos este resultado:


Directiva TagLib.

Esta parte es un poco más complicada. Pero básicamente, la directiva TagLib nos permite utilizar librerías de etiquetas creadas por el propio programador en nuestra pagina jsp. (Sonó confuso… cierto?) Podemos usar nuestras propias etiquetas (llamadas también etiquetas personalizadas o Custom Tags) en nuestra JSP y también nos permite usar etiquetas JSTL (verás eso en otro post).

Para mostrarte como funciona esto de las etiquetas personalizadas, haremos este ejemplo. Digamos que en mi jsp, yo escribiera mi propia etiqueta asi  , como ves, dicha etiqueta tiene un nombre (o prefijo, o prefix en ingles) el cual es “nuestraEtiqueta” y la parte “muestraHolaMundo” es simplemente una operación que puede realzar nuestra etiqueta, es decir cuando la ejecutemos en nuestra JSP se mostrará un mensaje, tal vez el “Hola Mundo”. Como yo sé que no acabas de entender nada de lo que acabo de decir en este parrafo, veamos el ejemplo:

Da clic derecho en el proyecto > Otro (es la última opción)
En la parte izquierda eliges la carpeta Web y en la parte derecha escoges “Tag Library Descriptor”, da clic en siguiente:

Aquí debemos darle un nombre a nuestra etiqueta, presta atención a los valores que están al final de esta imagen el “URI” y el “prefix”, da clic en finalizar:

Como ves se ha creado nuestra etiqueta en la carpeta tlds:

Nuestra etiqueta debe ejecutar una operación, dicha operación es realizada por una clase Java, crea la clase HolaMundo en el paquete etiquetas:

 

Como ves, el anterior código, es el que nos permite escribir el mensaje “Hola Mundo en custom Tags” en nuestra JSP. El método doStarTag es lo que va a hacer nuestra etiqueta al empezar a ejecutarse y una vez finalizado este método se llama al método doEndTag(), para dejar de ejecutar la etiqueta y retornar el flujo a nuestra jsp.
Bien, pasemos nuevamente al archivo NuestraEtiqueta.tld:
 

De lo anterior, la etiqueta   es simplemente porque nuestra etiqueta no tiene cuerpo, un ejemplo de etiqueta con cuerpo sería más o menos asi:
 
Ahora nuestra index.jsp:
 
En la linea
 

Decimos que vamos a hacer uso de la etiqueta que acabamos de crear. Y en la línea:
 
Simplemente hacemos uso de nuestra etiqueta. Ejecutamos y obtenemos:

Eso es todo por ahora.
En el proximo post, hablaré un poco de las Acciones Estandar de JSP, como  ,   y  ,   , en fin.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de CesarAlducin

Que buen Tutorial

Que buen Tutorial !!!!

Felicidades y la primera parte ya la hize !!!! ahora vamos por la segunda !!!!

Imagen de AlexSnake

Buen tutorial

Lo que has motrado hasta el momento es lo básico y esta bien explicado. Sirve muy bien para empezar, sigue así!!

Imagen de Algus Dark

De lujo.

JSP no es mi fuerte, y no he tenido mucho tiempo de indagar en ello. Genial, ahora soy menos ignorante que hace unos minutos :3

Saludos!!!

Es un placer

@CesarAlducin, @AlexSnake y @Algus Dark, pues es un placer publicar estas entradas en JavaMexico. Aunque la verdad, lo que estoy explicando es demasiado básico. Espero publicar pronto la entrada siguiente.

Un apunte: En los JSP de

Un apunte:

En los JSP de error tenemos el objeto implícito "exception" (además de application, session, request, response, etc.) y en él se almacena toda la información de la excepción. Así que podríamos tener algo como:

 

Versión de JSP

Oye @kaztle_8, ¿que versión de JSP estás empleando?, tengo entendido que la versión más reciente es la 2, sin embargo vi snippets que muestran que usas la versión 1, quisiera saber (personalmente, hace tiempo que no uso JSP), ¿cuales son las diferencias entre JSP 1 y JSP 2?. Hasta el momento el tutorial es muy bueno para empezar a hacer APLICACIONES WEB, y parece que a cada paso que da el tutorial va para mejor.

Bueno, espero respuesta.

basicamente, el expression languaje

Que mas @wishmaster77.
Pues, una de las cosas nuevas que hay en JSP 2 es basicamente el "Lenguaje de Expresiones", para facilitarte algunas cosas, el cual tiene la forma siguiente: ${expresion} . Iba a hablar mas adelante de eso :D, pero te doy un ejemplo:
En post anteriores yo he escrito:
 
Pero ahora, con la ayuda del expresion Language, yo pude haber escrito:
 
Como mencioné en la primera entrada del blog, yo soy un novato, comparado con usted. Y me da gusto se interese en estas cosas que estoy escribiendo, pero no creo que le sea de mucha ayuda. Un saludo.

Imagen de CesarAlducin

Quizá lo que estas realizando

Quizá lo que estas realizando sea lo básico pero precisamente conociendo y teniendo buenas bases
del lenguaje nos pueden servir para hacer cosas mas grandes y difíciles.

Saludos

Re: basicamente, el expression language

No tengo tanta experiencia y si me comparo con @OscarRyz o @ezamudio o @luxspes o @bferro me maravillo (hay entradas de ellos que me cuesta mucho entender). Esto es lo interesante del mundo de la computación, cuanto más sabes más te das cuenta que te queda mucho por aprender.

Respecto de la entrada, se ve interesante eso del expresssion language, es bueno tomar las cosas básicas a repaso, porque ya se ma ha olvidado.

#Colombianish - Mexican

#Colombianish - Mexican translation:
s/Que más/Que tal

:)

Re: Saludos

@OscarRyz, hehe.. Un saludo. Muy divertida la aclaración. :)


@wishmaster77, Un Saludo. Me creerás si te digo que también esto me ha servido a mi para repasar un poco? (Qué cosa más contradictoria.. hehe) Pero lo cierto es que repaso, y luego trato de escribir algo...
Por cierto, ya notaron lo pésimo que es mi ingles?, en vez de escribir "expression language" escribí "expression languaje" y después "expresion Language" (hehe..)

HTTP Status 404

gracias lo necesitaba.
tengo una duda como corregir
HTTP Status 404