Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MÓDULO:
Unidad 1
Implantación de Arquitecturas Web
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
ÍNDICE DE CONTENIDOS
GLOSARIO. …………………………………………………………………………………………..………. 24
2
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
Los estándares WWW especifican muchos de los mecanismos necesarios para construir un ambiente
de aplicación de propósito general, por ejemplo:
• Modelo estándar de nombres: todos los servidores, así como el contenido de la WWW se
denominan según un Localizador Uniforme de Recursos (Uniform Resource Locator: URL).
• Protocolos estándar: éstos permiten que cualquier navegador pueda comunicarse con
cualquier servidor web. El más comúnmente usado en WWW es HTML (Protocolo de
Transporte de HiperTexto), que opera sobre el conjunto de protocolos TCP/IP.
Esta infraestructura permite a los usuarios acceder a una gran cantidad de aplicaciones y servicios de
terceros. También permite a los desarrolladores crear aplicaciones y servicios para una gran
comunidad de clientes.
Los aspectos generales a destacar en una arquitectura web son los siguientes:
• Escalabilidad.
• Separación de responsabilidades.
• Portabilidad.
• Utilización de componentes en los servicios de
infraestructura.
• Gestión de las sesiones del usuario.
• Aplicación de patrones de diseño.
3
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
1. Proveedor del servicio Web: que es quien lo diseña, desarrolla e implementa y lo pone
disponible para su uso, ya sea dentro de la misma organización o en público.
2. Consumidor del servicio: que es quien accede al componente para utilizar los servicios que
éste presta.
3. Agente del servicio: que sirve como enlace entre proveedor y consumidor para efectos de
publicación, búsqueda y localización del servicio.
De forma genérica podríamos decir que la arquitectura Web es un modelo compuesto de tres capas:
4
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
Entre los factores que han impulsado el uso de los servicios Web se encuentran:
• El contenido se está volviendo más dinámico: Los sitios Web actuales proporcionan
contenidos "instantáneos". Un Servicio Web debe ser capaz de combinar contenido
proveniente de fuentes muy diferentes.
• El ancho de banda es menos costoso: Actualmente un Servicio Web puede entregar tipos
variables de contenidos como vídeo o audio. A medida que crezca el ancho de banda, los
servicios Web deben adaptarse a nuevos tipos de contenidos.
• El almacenamiento es más barato: Un Servicio Web debe ser capaz de manejar cantidades
masivas de datos, y debe poder hacerlo de forma inteligente.
Estos factores, unidos a los beneficios proporcionados por los servicios Web en la organización y los
buenos productos disponibles para su desarrollo, han hecho que su utilización se extienda sin
mayores obstáculos.
En términos generales, cuando se empiezan a utilizar servicios Web en una organización, estos se
desarrollan e implementan como servicios simples, que poco a poco se van integrando hasta llegar a
servicios Web mucho más complejos.
En los orígenes del mundo Web nos situábamos ante un entorno estático, con páginas en formato
HTML que raramente sufrían modificaciones o actualizaciones y en las que apenas había interacción
con el usuario.
La Web 2.0 es la transición que se ha dado desde las aplicaciones tradicionales hacia aplicaciones
que funcionan a través de la Web y que están fuertemente enfocadas al usuario final.
5
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
En este nuevo entorno existen una serie de nuevas tecnologías que, en general, tienen como
objetivo:
ASP (Active Server Pages): Las "Páginas Activas" se ejecutan del lado del servidor, de este
modo se forman los resultados que luego se mostrarán en el navegador de cada equipo
cliente que ha realizado la solicitud. Un buen ejemplo de ello son los buscadores, donde un
usuario realiza una petición de información y el servidor nos entrega un resultado a medida de
nuestra petición.
Existen versiones de ASP para Unix y Linux, a pesar de que fue una tecnología desarrollada
por Microsoft para la creación dinámica de páginas Web ofrecida junto a su servidor IIS.
CSS (Cascading Style Sheets): Las "Hojas de Estilo en Cascada" se usan para formatear
las páginas web; se trata de separar el contenido de un documento de su presentación.
Cualquier cambio en el estilo marcado para un elemento en la CSS afectará a todas las
páginas vinculadas a esa CSS.
6
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
Java: Este es un lenguaje que trabaja en el cliente, es decir: se ejecuta en el navegador del
equipo cliente y no en el servidor. Es un lenguaje eficiente y muy poderoso, que se
caracteriza por:
JavaScript: Lenguaje que se interpreta y se ejecuta en el cliente. Útil para realizar tareas
como mover imágenes por la pantalla, crear menús de navegación interactivos, utilizar
algunos juegos, etc. En las páginas web suele preferirse JavaScript porque es aceptado por
muchos más navegadores que VBScript (creado por Microsoft)
7
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
En función de cómo se presenta la aplicación web junto con el contenido que pretende mostrar, se ha
establecido la siguiente clasificación:
• Página web Estática. Están implementadas en HTML y pueden mostrar en alguna parte de
la página objetos en movimiento tales como banners, GIF animados, vídeos, etc.
• Página web Animada. Se realizan con la tecnología FLASH; ésta permite que una página
web presente el contenido con ciertos efectos animados continuados. El uso de esta
tecnología permite diseños más vanguardistas, modernos y creativos.
8
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
• Página web Dinámica. Existen muchos lenguajes de programación que son la base para la
mayoría de páginas web dinámicas. Los que destacamos aquí son los lenguajes PHP y ASP.
Estos lenguajes permiten una perfecta estructuración del contenido. Por una parte crearíamos
la estructura de las páginas web y por otra, almacenaríamos el contenido en determinados
archivos. A partir de ahí, crearíamos el código de llamada, que insertaría el contenido en la
propia página web estructurada. Este es el principio básico que siguen los lenguajes de
programación. A partir de aquí se desarrollan aplicaciones para poder gestionar el contenido
a través de un panel de control.
• Portal. Es un sitio web que en su página principal permite el acceso a múltiples secciones
que, por lo general, son foros, chats, cuentas de correo, buscador, acceso registrado para
obtener ciertas ventajas, las últimas noticias de actualidad, etc.
• Tienda virtual o comercio electrónico. Sitio web que publica los productos de una tienda en
Internet. Permite la compra on-line a través de tarjeta de crédito, domiciliación bancaria o
transferencia bancaria en general. Ofrece al administrador un panel de gestión para poder
subir los productos, actualizarlos, eliminarlos, etc.
• Página web con "Gestor de Contenidos". Se trata de un sitio web cuyo contenido se
actualiza a través de un panel de gestión por parte del administrador del sitio. Este panel de
gestión suele ser muy intuitivo y fácil de usar. En aquellas páginas web que requieran una
actualización constante, se suele incorporar este panel de gestión para que la web pueda
controlarse día a día por parte del cliente.
9
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
La evolución experimentada por los medios informáticos en los últimos años ha convivido con otra
evolución paralela, la evolución de la arquitectura de las aplicaciones web, que permite aprovechar
las nuevas características que éstas ofrecen.
De esta forma, el modelo arquitectónico de las aplicaciones de Internet ha sufrido dos grandes saltos,
con algún paso intermedio, desde la aparición de los primeros portales web.
Los distintos modelos de aplicación sobre los que se ha ido desarrollando, según diversos autores, se
podrían clasificar del siguiente modo:
Modelo 1
En este caso las aplicaciones se diseñan en un modelo web CGI (Common Gateway Interface),
basadas en la ejecución de procesos externos al servidor web, cuya salida por pantalla era el
HTML que el navegador recibía en respuesta a su petición. Presentación, negocio y acceso a
datos se confundían en un mismo script (perl).
Modelo 1.5
Aplicado a la tecnología java, se da con la aparición de las JSP y los servlets. En este modelo,
las responsabilidades de presentación recaen en las páginas JSP, mientras que los beans
incrustados en las mismas son los responsables del modelo de negocio y acceso a datos.
Modelo 2
Como evolución del modelo anterior, con la incorporación del patrón MVC en este tipo de
aplicaciones, se aprecia la incorporación de un elemento controlador de la navegación de la
aplicación. El modelo de negocio queda encapsulado en los javabeans que se incrustan en las
páginas JSP.
Modelo 2X
Aparecen con el objetivo de dar respuesta a la necesidad, cada vez más habitual, de desarrollar
aplicaciones multicanal, es decir, aplicaciones web que pueden ser atacadas desde distintos
tipos de clientes remotos. Así, una aplicación web multicanal podrá ejecutarse desde una PDA,
desde un terminal de telefonía móvil, o desde cualquier navegador HTML estándar. El medio
para lograr publicar la misma aplicación para distintos dispositivos es emplear plantillas XSL para
transformar los datos XML.
10
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
1. El sistema operativo, bajo el cual opera el equipo donde se hospedan las páginas web y que
representa la base misma del funcionamiento del computador. En ocasiones limita la elección
de otros componentes.
2. El servidor web es el software que maneja las peticiones desde equipos remotos a través de
la Internet. En el caso de páginas estáticas, el servidor web simplemente provee el archivo
solicitado, el cual se muestra en el navegador. En el caso de sitios dinámicos, el servidor web
se encarga de pasar las solicitudes a otros programas que puedan gestionarlas
adecuadamente.
Diferentes combinaciones de los cuatro componentes señalados, basadas en las distintas opciones
de software disponibles en el mercado, dan lugar a numerosas plataformas web:
La plataforma LAMP.
Trabaja enteramente con componentes de software libre y no está sujeta a restricciones
propietarias. El nombre LAMP surge de las iniciales de los componentes de software que la
integran:
La plataforma WISA.
Está basada en tecnologías desarrolladas por la compañía Microsoft; se trata, por lo tanto, de
software propietario. La componen los siguientes elementos:
11
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
Plataforma XAMPP.
Es un servidor independiente de plataforma, software libre. El programa está liberado bajo la
licencia GNU y actúa como un servidor web libre, fácil de usar y capaz de interpretar páginas
dinámicas. La componen los siguientes elementos:
Plataforma WAMP
El uso de un WAMP permite servir páginas html a internet, además de poder gestionar datos en
ellas, al mismo tiempo un WAMP, proporciona lenguajes de programación para desarrollar
aplicaciones web.
Es un sistema de infraestructura de internet que usa las siguientes herramientas:
Plataforma MAMP
Se refiere al conjunto de programas software comúnmente usados para desarrollar sitios web
dinámicos sobre sistemas operativos Apple Macintosh, MAC OS X... La componen los siguientes
elementos:
Existen muchas otras plataformas que trabajan con distintos sistemas operativos (Unix, MacOS,
Solaris), servidores web (incluyendo algunos que se han cobrado relativa popularidad como Lighttpdy
LiteSpeed), bases de datos (Postgre SQL) y lenguajes de programación.
12
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
1.6.- Escalabilidad.
Las aplicaciones web se ejecutan en un entorno donde el número de clientes que solicitan el servicio
puede variar en gran medida en función del momento. Es por ello que hay una característica de
esencial importancia como es la escalabilidad.
En el entorno en que se ubican las aplicaciones web, uno de los principales factores que puede
afectar al rendimiento de las mismas es el número de usuarios, ya que éste puede verse
incrementado de forma vertiginosa en un periodo de tiempo relativamente corto.
El éxito o el fracaso de un sitio web orientado al usuario común vendrá determinado, entre otros
aspectos, por el dimensionamiento del sistema sobre el que se instala y soporta el software que
sustenta dicho sitio.
En consecuencia, uno de los requisitos fundamentales de una aplicación web es que sea
completamente escalable sin que un aumento de los recursos dedicados a la misma suponga
modificación alguna en su comportamiento o capacidades.
13
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
Escalabilidad vertical.
Habitualmente, la separación lógica en capas se implementa de tal forma que se permita una
separación física de las mismas.
Interponiendo elementos conectores que actúen de middlewareses posible distribuir la aplicación de
forma vertical (una máquina por cada capa del sistema), e incluso si esto no fuera suficiente,
distribuyendo los elementos de una misma capa entre distintas máquinas servidoras.
Escalabilidad horizontal.
Se trata de clonar el sistema en otra máquina de características similares y balancear la carga de
trabajo mediante un dispositivo externo. El balanceador de carga puede ser:
14
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
usuario en la misma máquina, condiciona seriamente el diseño, dado que fuerza a que la
información relativa a la sesión del usuario sea almacenada por el implementador del mismo,
bien en cookies o bien en base de datos.
• Balanceador hardware http: Se trata de dispositivos hardware pero que examinan el paquete
http y mantienen la relación usuario-máquina servidora. Mucho más rápidos que los
balanceadores software, pero algo menos que los hardware, suponen hoy en día una de las
soluciones más aceptadas en el mercado.
Cluster.
Con la aparición de los servidores de aplicaciones en cluster se abre una nueva capacidad de
escalabilidad que, dependiendo de cómo se aplique, podría clasificarse como vertical u horizontal.
Un cluster de servidores de
aplicaciones permite el
despliegue de una aplicación
web corriente, de forma que su
carga de trabajo vaya a ser
distribuida entre la granja de
servidores que forman el
cluster, de modo transparente
al usuario y al administrador.
El cluster, mediante el mecanismo de replicación de sesión, garantiza que sea cual sea la máquina
que sirva la petición http, tendrá acceso a la sesión del usuario (objeto HttpSession en java). Este
tipo de sistemas, debido precisamente a la replicación de sesión, suele presentar problemas de
rendimiento.
15
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
• Estructurado en módulos.
• Cada módulo contiene un conjunto de funciones relativas a un aspecto concreto del servidor.
• El archivo binario httpd contiene un conjunto de módulos que han sido compilados.
El servidor Apache se desarrolla dentro del proyecto HTTP Server (httpd) de la Apache Software
Foundation. La licencia de software, bajo la cual el software de la fundación Apache es distribuido, es
una parte distintiva de la historia de Apache HTTP Server y de la comunidad de código abierto. La
Licencia Apache permite la distribución de derivados de código abierto y cerrado a partir de su
código fuente original.
• Cliente: navegador.
• Servidor: servidor web
• Comunicación: protocolo HTTP
16
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
Un servidor de aplicaciones también es una máquina en una red de computadores que ejecuta
determinadas aplicaciones, gestionando la mayor parte de las funciones de acceso a los datos de la
aplicación.
Otra de las ventajas es la integridad de datos y código ya que, al estar centralizada en una o un
pequeño número de máquinas servidoras, las actualizaciones están garantizadas para todos los
usuarios.
El término servidor de aplicaciones se aplica a todas las plataformas. Dicho término se utiliza
para referirse a los servidores de aplicaciones basadas en web, como el control de las plataformas de
comercio electrónico integrado, sistemas de gestión de contenido de sitios web y asistentes o
constructores de sitios de Internet.
Uno de los ejemplos destacados es el de Sun Microsystems, la plataforma J2EE. Los servidores de
aplicaciones Java se basan en la Plataforma Java TM2 Enterprise Edition (J2EE TM).
J2EE utiliza un modelo de este tipo y en general, incluye un nivel Cliente, un nivel Medio, y un EIS. El
servidor de tipo Cliente puede contener una o más aplicaciones o navegadores. La Plataforma J2EE
es del Nivel Medio y consiste en un servidor web y un servidor EJB. (Estos servidores son también
llamados "contenedores".) También podría haber subniveles adicionales en el nivel intermedio. El
nivel del Sistema Enterprise Information System (EIS, o "Sistema de Información Empresarial")
contiene las aplicaciones existentes, archivos y bases de datos.
17
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
1. Contenedores de servlets stand-alone (independientes): Estos son una parte integral del
servidor web. Este es el caso en el que se usa un servidor web basado en Java, por ejemplo,
el contenedor de servlets es parte de JavaWebServer (actualmente sustituido por iPlanet).
Por defecto Tomcat trabaja en este modo, sin embargo, la mayoría de los servidores no están
basados en Java.
Tomcat puede utilizarse como un contenedor solitario (principalmente para desarrollo y depuración) o
como plugin para un servidor web existente, actualmente soporta los servidores Apache, IIS. Esto
significa que siempre que despleguemos Tomcat tendremos que decidir cómo usarlo y, si
seleccionamos las opciones 2 o 3, también necesitaremos instalar un adaptador de servidor web.
18
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
Un servlets es una aplicación java encargada de realizar un servicio específico dentro de un servidor
web. La especificación Servlet2.2 define la estructura de directorios para los ficheros de una
aplicación web. El directorio raíz debería tener el nombre de la aplicación y define la raíz de
documentos para la aplicación web. Todos los ficheros debajo de esta raíz pueden servirse al cliente
excepto aquellos ficheros que están bajo los directorios especiales META-INF y WEB-INF en el
directorio raíz. Todos los ficheros privados, al igual que los ficheros class de los servlets, deberían
almacenarse bajo el directorio WEB-INF.
Durante la etapa de desarrollo de una aplicación web se emplea la estructura de directorios, a pesar
de que luego en la etapa de producción, toda la estructura de la aplicación se empaqueta en un
archivo .war
El código necesario para ejecutar correctamente una aplicación web se encuentra distribuido en una
estructura de directorios, agrupándose ficheros según su funcionalidad. Un ejemplo de la estructura
de carpetas de una aplicación web puede ser el siguiente:
/index.jsp
/WebContent/jsp/welcome.jsp
/WebContent/css/estilo.css
/WebContent/js/utils.js
/WebContent/img/welcome.jpg
/WEB-INF/web.xml
/WEB-INF/struts-config.xml
/WEB-INF/lib/struts.jar
/WEB-INF/src/com/empresa/proyecto/action/welcomeAction.java
/WEB-INF/classess/com/empresa/proyecto/action/welcomeAction.class
De forma genérica podríamos decir que una aplicación web se estructura en tres capas:
1. Navegador web.
2. Tecnología web dinámica (PHP, Java Servlets, ASP, etc.)
3. Base de datos encargada de almacenar de forma permanente y actualizada la información
que la aplicación web necesita.
19
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
• Servlets y JSP.
• Contenido estático: HTML, imágenes, etc.
• Otros recursos web.
Aportan como ventaja, la simplificación del despliegue de aplicaciones web, debido a que su
instalación es sencilla y solamente es necesario un fichero para cada servidor en un cluster, además
de incrementar la seguridad ya que no permite el acceso entre aplicaciones web distintas.
Su estructura es la siguiente:
• /: En la carpeta raíz del proyecto se almacenan elementos empleados en los sitios web, tipo
documentos html, CSS y los elementos JSP (*.html *.jsp *.css).
• /WEB-INF/: Aquí se encuentran los elementos de configuración del archivo .WAR como
pueden ser: la página de inicio, la ubicación de los servlets, parámetros adicionales para
otros componentes. El más importante de éstos es el archivo web.xml.
• /WEB-INF/lib/: Contiene los archivos JAR utilizados por la aplicación y que normalmente son
las clases empleadas para conectarse con la base de datos o las empleadas por librerías
de JSP.
Para generar archivos .WAR se pueden emplear diversas herramientas desde entorno IDE"Integrated
Development Environment".
Por ejemplo, encontramos: NetBeans y Eclipse, ambos Open-Sourcey también Jbuilder de
Borland, Jdeveloper de Oracle; otro modo de construir archivos war es mediante Ant. Se trata de
una herramienta Open-Source que facilita la construcción de aplicaciones en Java. No es
considerado un IDE pero para los que conocen el entorno Linux, es considerado el make de Java.
20
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
La carpeta www contiene, a su vez, una carpeta con el nombre y ruta del proyecto que contiene los
ficheros que forman la interfaz (html, js, css, etc.).
1. Copiar la carpeta contenida en www (con el nombre del proyecto) en el directorio webapps
de Tomcat.
2. Renombrar la nueva carpeta así creada en Tomcat con un nombre más sencillo. Esa será la
carpeta de la aplicación en Tomcat.
3. Crear, dentro de dicha carpeta, otra nueva, y darle el nombre WEB-INF (respetando las
mayúsculas).
4. Crear, dentro de WEB-INF, otros dos subdirectorios, llamados lib y classes.
5. Copiar en lib todas las librerías (.jar) que necesite la aplicación para su funcionamiento.
6. Copiar el contenido de la carpeta bin de la aplicación en el subdirectorio WEB-INF/classes de
Tomcat.
7. Crear en WEB-INF un fichero de texto llamado web.xml, con las rutas de los servlets
utilizados en la aplicación.
8. A la aplicación ya puede accederse en el servidor, poniendo en el navegador la ruta del
fichero html de entrada, que estará ubicado en la carpeta de la aplicación en Tomcat.
21
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
Cualquier aplicación web tiene que aportar un descriptor de despliegue situado en WEB-INF/web.xml.
22
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
<servlet>
<servlet-name>nombre</servlet-name>
<servlet-class>package.nombre.MiClass</servlet-class>
</servlet>
Para probar el servlet, una vez arrancado el servidor Tomcat, abrimos un navegador web, en el cual
escribiríamos una URL con el siguiente formato:
http://{address}:{port}/{servletName}
por ejemplo:
http://localhost:8080/Servlet_de_prueba
23
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
GLOSARIO
Beans
Abreviatura científica del botánico Willian Jackson Bean (18631947). Un bean es un componente
software que tiene la particularidad de ser reutilizable y así evitar la tediosa tarea de programar los
distintos componentes uno a uno.
GNU GPL
La Licencia Pública General de GNU, o más conocida por su nombre en inglés GNU General Public
License es una licencia creada por la " Free Software Fundation" y está orientada, principalmente, a
proteger la libre distribución, modificación y uso de software. Su propósito es declarar que el software
cubierto por esta licencia es software libre y protegerlo de intentos de apropiación que restrinjan esas
libertades a los usuarios. El proyecto GNU (GNU es un acrónimo recursivo para "GNU No es Unix").
Comenzó en 1984 a desarrollar un sistema operativo completo con la principal propiedad de ser
Software Libre.
Java
Lenguaje de programación orientado a objetos, desarrollado por Sun Microsystems a principios de los
años 90, aunque a finales de 2006 liberó la mayor parte de sus tecnologías Java bajo la licencia GNU
GPL
Javabeans
Son un modelo de componentes creado por Sun Microsystems para la construcción de aplicaciones
en Java; se usan para encapsular varios objetos en un único objeto (bean), para hacer uso de un solo
objeto en lugar de varios más simples. La especificación de JavaBeans los define como;
componentes de software reutilizables que se puedan manipular visualmente en una herramienta de
construcción.
MySQL
Es un potente gestor de bases de datos relacional, sencillo de usar e increíblemente rápido. También
es uno de los motores de bases de datos más usados en Internet, la principal razón de esto es que se
distribuye bajo la licencia GNU GPL para aplicaciones no comerciales.
Perl
Es un lenguaje de programación diseñado por Larrry Wall en 1987. Perl toma características del
lenguaje C, del lenguaje interpretado shell (sh), awk, sed, Lisp y, en un grado inferior, de muchos
otros lenguajes de programación.
24
DEPARTAMENTO DE INFORMÁTICA Y COMUNICACIONES
Desarrollo de Aplicaciones Web
Módulo: Despliegue de Aplicaciones Web
AVILÉS Unidad 1: Implantación de arquitecturas Web
Servlet
Son objetos que se ejecutan dentro del contexto de un contenedor de servlets, por ejemplo Tomcat y
amplían su funcionalidad. La palabra servlet deriva de otra anterior, applet, que se refería a pequeños
programas que se ejecutan en el contexto de un navegador web. Por contraposición, un servlet es un
programa que se ejecuta en un servidor. El uso más común de los servlets es generar páginas web
de forma dinámica a partir de los parámetros de la petición que envíe el navegador web.
Shell
En informática este término se emplea para referirse a programas que proveen una interfaz de
usuario para acceder a los servicios del sistema operativo.
25