JTagua

Inicio » JSP/SERVLETS » Directivas » @include » Tutorial de JSP (8) – Directiva @include

Tutorial de JSP (8) – Directiva @include

Licencia

Creative Commons License

Visitas:

  • 813.331 hits

La directiva include inserta el contenido de otro fichero en el fichero principal JSP, en la línea donde está situada y antes de ser procesada o traducida a servlet. Su sintaxis es la siguiente.

<%@ include file=”url relativa” %>

En otras palabras, la directiva include simplemente copia el contenido del archivo incluido byte a byte, siendo el resultado similar a si copiamos el texto del archivo incluido y lo pegamos en el JSP.

Es muy importante señalar que dado que la directiva include incluye el fichero en el momento de la compilación, si la página incluida cambia después de la compilación, los cambios no se verán reflejados en la página actual hasta que se vuelva a compilar. Por esta razón si una página incluida cambia, es necesario re-compilar la página que la contiene.

La URL se interpreta relativa al directorio home del servidor Web empezando la URL (Web Pages del proyecto, el lugar donde debe encontrarse index.jsp). Los contenidos del fichero incluido son analizados como texto normal, y así pueden incluir JSP, HTML estático, elementos de script, directivas, acciones o fichero TXT de texto convencional.

Tenga especial cuidado en estas inclusiones de fragmentos de código, porque la página final resultante debe ser coherente respecto a las etiquetas <html> , </html> , <body> o </body>, ya que no deben repetirse cuando se construya la página principal con las inclusiones.

Es útil para incluir información que se quiere reutilizar en otras páginas u aplicaciones. Por ejemplo, el fichero incluido pudiera ser

1.- Una tabla con un banner gráfico fijo, o

2.- Información de pie de página con el  copyright, o

3.- Una cabecera idéntica para un grupo de páginas de una aplicación, etc.

Image2

Ejemplo:

Deseamos producir una página JSP que contenga tres partes funcionales, una cabecera, un cuerpo y un pie. Deseamos que el aspecto final sea el siguiente:

1.- Inicie una sesión con el IDE de NetBeans y haga “Archivo”, “Proyecto Nuevo”, “Proyecto Web” y “Web Aplication”…

Cuando el editor presente la plantilla del archivo index.jsp sustitúyalo por el siguiente otro

<%-- 
    Document   : index
    Created on : 02-ene-2009, 11:28:39
    Author     : jtagua
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Ejemplo accion include</title>
    </head>
    <body BGCOLOR="#FDF5E6">

        <CENTER>
            <H1>NOTICIAS DEL DÍA</H1>
            <H2>Resumen de las noticias recientes:</H2>
                <OL>
                    <LI>Primera Noticia:<br>
                        <jsp:include page="noticias/item1.html" flush="true" />
                    <LI>Segunda Noticia:<br>
                        <jsp:include page="noticias/item2.html" flush="true" />
                </OL>
        </CENTER>
    </body>
</html>

Vea que se ha introducido dos directivas include, en dos lugares muy concretos a fin de producir el resultado deseado. Estas directivas obligan a crear dos nuevos archivos : un JSP y otro  HTML
2.- Haga click con el botón derecho del ratón sobre el proyecto y haga “Nuevo” y “JSP”,  asigne el nombre de “cabecera” al archivo. Sustituya el código de la plantilla por el siguiente otro,

<img src="imagenes/rafanadal.jpg" width="190" height="120" alt="Rafa Nadal"/>
<p>
Rafael Nadal fu&eacute; el beneficiario de un en&eacute;simo abandono en el Masters de Shanghai
<br>al avanzar ayer viernes a las semifinales cuando Ivan Ljubicic se convirti&oacute; en el
<br>octavo jugador en retirarse por una lesi&oacute;n durante el transcurso de la semana.
</p>

3.- Haga click con el botón derecho del ratón sobre el proyecto y haga “Nuevo” y “HTML”, asigne el nombre de “pie” al archivo. Sustituya el código de la plantilla por el siguiente otro,

<img src="imagenes/federer.jpg" width="190" height="120" alt="Federer"/>
<p>
 El tenista suizo Roger Federer, cinco veces campe&oacute;n de Wimbledon, gan&oacute; en su
 <br> debut en la pista central del torneo brit&aacute;nico frente el taiwan&eacute;s Yen-Hsun
 <br> Lu por 7-5, 6-3 y 6-2, tras una hora y 45 minutos de juego.(Modificado)
 </p>

4.- Ejecute finalmente para obtener el resultado esperado …

Observe cómo se describe la localización relativa en base al árbol de directorios y ficheros del proyecto

Image1

SUGERENCIAS:

1.-Pruebe a modificar cualquiera de los archivos incluidos y sin compilar de nuevo index,jso recargue la página ¿Qué observa? …

2.-Cree una nueva carpeta llamada “inclusiones” y mueva los archivos “cabecera.jsp” y “pie.html” a ella ¿Cuál sería la ruta relativa ahora?.

Consideraciones:

Pruebe a modificar una página incluida y compruebe que hasta que no recompile la página contenedotra no se mostrarán los cambios.

Cuestiones a recordar:

Concepto, uso y sintaxis de la directiva include.


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: