Está en la página 1de 26

Programacin Web con J2EE

1 / 26








Programacin en J2EE
Entorno de trabajo











IDICE:

Programacin en J2EE .................................................................................................................. 1
Entorno de trabajo ......................................................................................................................... 1
1 Objetivos ................................................................................................................................ 2
2 Introduccin a J2EE ............................................................................................................... 3
2.1 Componentes J2EE .......................................................................................................... 3
2.2 Contenedores J2EE .......................................................................................................... 7
2.3 Empaquetado .................................................................................................................... 8
2.4 Arquitectura de Aplicaciones J2EE.................................................................................. 9
3 Entorno de desarrollo ........................................................................................................... 13
3.1 NetBeans ........................................................................................................................ 13
3.2 Apache Tomcat .............................................................................................................. 14
4 Ciclo de vida de desarrollo Web .......................................................................................... 15
5 Ejercicios ............................................................................................................................. 16
5.1 Instalar JDK y NetBeans ................................................................................................ 16
5.2 Cuestionario ................................................................................................................... 25


Programacin Web con J2EE
2 / 26
1 Objetivos
Los objetivos de esta sesin son:
- Conocer el entorno en el que se va a desarrollar el curso
- Aprender a instalar el IDE que se utilizar
- Conocer la arquitectura J2EE que seguiremos durante el curso
- Diferenciar los componentes y contenedores que conforman J2EE
- Estudiar las arquitecturas empleadas en las aplicaciones J2EE
- Comprender el ciclo de desarrollo de aplicaciones Web

Programacin Web con J2EE
3 / 26

2 Introduccin a J2EE
Java 2 Enterprise Edition (J2EE) es una arquitectura multicapa para implementar
aplicaciones de tipo empresarial y aplicaciones basadas en la Web. Esta tecnologa
soporta una gran variedad de tipos de aplicaciones desde aplicaciones Web de gran
escala usando clustering (varios servidores) a pequeas aplicaciones con un nico
servidor.
El objetivo principal de la tecnologa J2EE es crear un modelo de desarrollo para
aplicaciones empresariales utilizando componentes. Estos componentes, llamados
componentes J2EE, utilizan servicios proporcionados por el contenedor, que de otro
modo tendran que estar incorporados en el cdigo de la aplicacin.
Estos componentes J2EE se ensamblan formando una aplicacin J2EE. Una vez
verificado el correcto funcionamiento de la misma se despliegan los componentes en el
entorno de produccin, donde se ejecutan y son controlados por el servidor de
aplicaciones J2EE. Este despliegue se realiza mediante un empaquetado adecuado de los
componentes que ms adelante explicaremos.
Debemos remarcar que el uso de todos los componentes J2EE podra no ser lo ideal
para todos los escenarios: por ejemplo, una pequea aplicacin se cubrira mejor
utilizando una solucin de basada en componentes web J2EE (Servlets, JSPs, etc.) sin
usar componentes de negocio J2EE (EJBs). Esto es debido a que si se usaran todos los
componentes J2EE tendramos una aplicacin escalable, distribuida, con soporte para
miles de usuarios, etc. pero de un rendimiento menor.
En los siguientes apartados explicaremos con mayor detalle los aspectos bsicos que
componen J2EE:
- Componentes J2EE
- Contenedores J2EE
- Empaquetado
- Arquitectura de aplicaciones J2EE

2.1 Componentes J2EE
Un componente J2EE es una unidad de software funcional que se ensambla dentro
de una aplicacin J2EE. De este modo, las aplicaciones J2EE estn compuestas de
diferentes componentes que al interactuar componen la aplicacin. La especificacin
J2EE define los siguientes componentes J2EE:
a) Las Aplicaciones Cliente y los Applets son componentes que se ejecutan en el
lado del cliente, por ello se conocen como Clientes J2EE.
b) Los componentes Java Servlet y la tecnologa Java Server Pages (JSP) son
componentes Web que se ejecutan en el lado del servidor.
Programacin Web con J2EE
4 / 26
c) Los Enterprise JavaBeans (EJBs) son componentes de negocio que se ejecutan
en el lado del servidor.
En la siguiente figura observamos estos componentes y su ubicacin.

Adems de estos componentes principales, J2EE incluye servicios estndar y
tecnologas de soporte como:
- Java Database Connectivity (JDBC) tecnologa que proporciona acceso a
sistemas de bases de datos relacionales.
- Java Transaction API (JTA) o Java Transaction Service (JTS) proporciona
soporte para transacciones a los componentes J2EE.
- Java Messaging Service (JMS) permite la comunicacin asncrona entre
componentes J2EE.
- Java aming Directory Interface (JDI) proporciona acceso a nombres y
directorios de la maquina del servidor.
OTA:
En este curso nos centraremos en el uso de los componentes Web y JDBC
2.1.1 Clientes J2EE
Los clientes J2EE se dividen en dos tipos posibles: las aplicaciones de escritorio
y los clientes Web.
- Las aplicaciones de escritorio se ejecutan sobre la mquina del cliente y
proporciona un interfaz de usuario ms rico que el que pueda proporcionar un
lenguaje de marcas (pginas Web). Normalmente tienen un interfaz grfico de
usuario (GUI) creado con los APIs Swing o Abstract Window Toolkit (AWT).
Estas aplicaciones accederan al Entorno J2EE a travs de la capa de negocio
ms adelante trataremos la arquitectura de aplicaciones J2EE
Programacin Web con J2EE
5 / 26
- Otro tipo de clientes J2EE son los clientes Web, los cuales constan de dos
partes: por un lado estn las pginas Web y por otro lado el navegador Web, que
dibuja las pginas recibidas desde el servidor. Estos clientes Web acceden al
entorno J2EE a travs de Servlets, los cuales acceden a la capa de negocio. Esto
permite un diseo ms claro y modular de la aplicacin porque proporciona
mayor significado a la separacin de la lgica de la aplicacin de la parte visual.
2.1.2 Componentes Web
Los componentes Web de J2EE pueden ser Servlets o pginas JSP:
- Los Servlets son clases Java que procesan dinmicamente las peticiones y
construyen las respuestas.
- Las pginas JSP son documentos basados-en-texto que internamente se traducen
y se ejecutan como Servlets pero permiten una aproximacin ms natural para
crear la respuesta a cliente.
Las pginas HTML y los Applets (pequea aplicacin cliente escrita en Java que se
ejecuta en la mquina virtual Java instalada en el navegador Web del cliente) se juntan
con los componentes Web durante el ensamblado de la aplicacin, pero la
especificacin J2EE no los considera como componentes J2EE.

En la siguiente figura tenemos un resumen de cmo se realizara la comunicacin entre
Clientes J2EE y Componentes Web:


2.1.3 Componentes de Negocio
La capa de negocio es la lgica que resuelve o cumple las necesidades de un
negocio particular, como la banca, la venta, o la financiacin, etc. En un servidor J2EE
esta capa de negocio se maneja mediante componentes Enterprise JavaBeans (EJBs). De
ah que se conozcan como componentes de negocio J2EE.
Programacin Web con J2EE
6 / 26

Un EJB recibe datos de los programas clientes, los procesa (si es necesario), y los enva
a la capa de datos para su almacenamiento. Tambin recupera datos desde el
almacenamiento, los procesa (si es necesario), y los enva de vuelta al programa cliente.
Hay tres tipos de beans enterprise (EJB):
- de sesin (con o sin estado)
Un bean de sesin representa una conversacin temporal con un cliente.
Cuando el cliente finaliza su ejecucin, el bean de sesin y sus datos
desaparecen.
- de entidad (manejados por el bean o por el contenedor)
Un bean de entidad representa datos persistentes almacenados en una fila
de una tabla/relacin de una base de datos. Si el cliente se termina o si se
apaga el servidor, los servicios subyacentes se aseguran de grabar el bean
(persistencia) tal y como qued en la aplicacin.
- beans dirigidos a mensaje.
Un bean dirigido a mensaje permite que un componente de negocio
reciba asncronamente mensajes JMS.

NOTA:
El objetivo de este curso, tal y como se indic en su convocatoria, es dar una primera
aproximacin a la programacin en Internet mediante J2EE. El uso de EJBs est
pensado para crear grandes aplicaciones, distribuidas, escalables y que sean capaces de
soportar miles de usuarios. En este curso crearemos pequeas-medianas aplicaciones,
que estarn organizadas en capas tal y como se hara en las grandes aplicaciones, pero
para evitar complicar en exceso el contenido del curso y poder ajustarnos a los
requisitos temporales evitaremos el uso de EJBs y rellenaremos con clases normales la
capa de negocio. En futuros cursos se completar este contenido.


Programacin Web con J2EE
7 / 26
2.2 Contenedores J2EE

Los contenedores J2EE proporcionan acceso a los servicios subyacentes del
entorno del Servidor J2EE mediante contenedores para diferentes tipos de componentes.
Tradicionalmente, los desarrolladores de aplicaciones tenan que escribir cdigo extra
para sus aplicaciones: para el manejo de transacciones, manejo del estado del programa,
multi-hilos, almacenamiento de recursos, etc. Actualmente el contenedor J2EE
proporciona estos servicios permitiendo que el programador solo se deba concentrar en
resolver los problemas de negocio.
Los contenedores son el interfaz entre un componente J2EE y la funcionalidad de bajo
nivel especfica de la plataforma que soporta el componente. Es por ello que antes de
poder ejecutar un componente Web (Servlets, JSPs) o de negocio (EJBs), deben
ensamblarse (empaquetarse) y desplegarse dentro de su contenedor J2EE.
El proceso de ensamblado implica especificar las configuraciones del servidor para cada
componente de la aplicacin J2EE y para la propia aplicacin J2EE. Estas
configuraciones, que se realizan a travs de ficheros internos en el empaquetado,
personalizan el soporte que proporcionar el servidor J2EE, que incluye servicios como:
seguridad, control de transacciones, conectividad distribuida etc.
El servidor J2EE proporciona dos tipos de contenedores:
- contenedores para Enterprise JavaBeans (EJB)
El contenedor EJB maneja la ejecucin de los Enterprise JavaBeans de
las aplicaciones J2EE, controlando sus transacciones, persistencia,
llamadas remotas, etc.
- contenedores para componentes Web.
El contenedor Web maneja la ejecucin de las pginas JSP y los Servlets
de la aplicacin J2EE, controlando su ejecucin multihilo, estados,
seguridad, etc. Por ejemplo: al recibir una peticin desde un cliente web
el contenedor web redirigir esta peticin al componente web apropiado.
Adems el contenedor Web dirige el ciclo de vida de los componentes,
decidiendo cuando debe crear una instancia de un Servlet, cuando
eliminarla, etc.
Cualquier servidor J2EE tendr siempre un contenedor Web. Ahora bien, no todos los
servidores J2EE disponen de contenedor para EJBs. Esto es debido a lo que hemos
indicado anteriormente: El uso de EJBs est justificado en caso de grandes aplicaciones
con miles de usuarios. En los dems casos, por cuestiones de rendimiento, no se usan
EJBs sino clases java normales (tambin llamadas POJO-Plain Old Java Object-)
Otro contenedor distinto a estos es el contenedor de aplicaciones cliente(tanto de
escritorio, como de Cliente Web), que no son parte del servidor J2EE porque residen en
la mquina del cliente.



Programacin Web con J2EE
8 / 26

2.3 Empaquetado
Para poder desplegar una aplicacin J2EE, despus de desarrollar los diferentes
componentes, se empaqueta en archivos especiales que contienen los ficheros de las
clases y los descriptores de despliegue XML. Estos descriptores de despliegue
contienen informacin especfica de capa componente empaquetado y son un
mecanismo para configurar el comportamiento de la aplicacin. Estos archivos
especiales varan segn el tipo de componentes:
Los componentes Web se empaquetan en un archivo Web (.war) que contiene los
Servlets, las pginas JSP y los elementos estticos como las pginas HTML y las
imgenes. El fichero .war contiene clases y ficheros utilizados en el contenedor Web
junto con un descriptor de despliegue (XML) de componentes Web.
Los Applets y sus descriptores de despliegue se empaquetan en un fichero Java (.jar)
que se situar en la mquina cliente.
Los componentes de negocio se empaquetan en un archivo Java (.jar) que contiene los
descriptores de despliegue de componentes EJB, adems de los ficheros del interfaz
remoto y del objeto junto con ficheros de ayuda requeridos por el componente EJB.
Una aplicacin J2EE se empaqueta en un archivo enterprise (.ear) que contiene toda la
aplicacin junto con el descriptor de despliegue que proporciona informacin sobre la
aplicacin y sus componentes.
En la siguiente figura vemos resumido todo lo explicado anteriormente.



Programacin Web con J2EE
9 / 26
2.4 Arquitectura de Aplicaciones J2EE
J2EE es una especificacin abierta que define una plataforma para el desarrollo de
aplicaciones distribuidas. El desarrollo de aplicaciones bajo J2EE se basa en la
separacin de capas.

La separacin de capas permite una delimitacin de responsabilidades a la vez que
satisface los requisitos no funcionales de este tipo de aplicaciones (escalabilidad,
extensibilidad, flexibilidad, etc.) y disminuye el acoplamiento entre las diferentes partes
de las mismas.

Esta estructura en capas se ha constituido en un estndar a la hora de desarrollar
aplicaciones empresariales dejando obsoleto el clsico modelo cliente-servidor. Las dos
plataformas empresariales ms importantes de la actualidad, J2EE y .ET, proponen
este esquema de desarrollo de aplicaciones. El rol de cada una de estas capas es similar
en ambas plataformas variando nicamente la tecnologa sobre la que se sustentan cada
una de dichas capas:

- Capa de presentacin: La capa de presentacin contiene toda la lgica de
interaccin entre el usuario y la aplicacin. Adems, es la capa encargada de
controlar la interaccin entre el usuario y la lgica de negocio generando las
vistas necesarias para mostrar informacin al usuario en el modo ms adecuado.

- Capa de lgica de negocio: En esta capa se localiza el cdigo y las reglas que
sirven como ncleo de nuestras aplicaciones. Como tal es importante que
cumpla una serie de caractersticas fundamentales como la fcil extensibilidad y
mantenibilidad, alta reutilizacin, alta flexibilidad, etc.

- Capa de integracin: Esta es la capa donde se realizan diferentes tareas de
integracin con otros sistemas como son el acceso a datos, el acceso a sistemas
privados de la empresa (SAP, etc.), acceso a servicios web, acceso a XML, etc.
Es importante que esta capa sea flexible, de modo que sea fcil aadir nuevas
fuentes de datos sin que esto afecte a la capa de lgica de negocio.

- Capa de entidades: Esta cuarta capa es comn a todas la dems, dado que ser
la que nos provea de objetos que podamos intercambiar en las comunicaciones
entre capas. De este modo si por ejemplo el resultado de un mtodo de un objeto
de la capa de negocio ha de devolver los datos de un registro de la base de datos,
nos lo devolver como un objeto cuya definicin habremos situado en la capa de
Entidades. Al ser esta capa comn a las dems, no se suele tener en cuenta y se
habla de Arquitectura de tres capas. Esta capa es fruto de aplicar el patrn
Transfer Object, que estudiaremos en la sesin VI.

La siguiente figura nos muestra un resumen de las capas que componen una aplicacin,
sus elementos y funciones:






Programacin Web con J2EE
10 / 26
Es importante tener en cuenta para crear aplicaciones J2EE bien construidas que:
- la comunicacin entre capas nunca saltar de una capa a otra sin pasar por la
intermedia.
- Nunca capas inferiores llamaran a las superiores

Pongamos un ejemplo para que quede claro: nunca la capa de integracin llamara a
servicios de la capa de lgica de negocio ni la capa de presentacin podra llamar
directamente a la capa de integracin sin pasar por la capa de lgica de negocio.

Relacionemos esta arquitectura tan genrica con los componentes J2EE que veremos a
lo largo del curso:
- Capa de presentacin
Usaremos los componentes Web J2EE, tanto JSP como Servlets, adems
tambin estudiaremos el uso pginas estticas (HTML)

- Capa de negocio
En esta capa no usaremos EJBs, sino objetos java normales, tambin
conocidos con el nombre de POJO (Plain Old Java Object). La gran
ventaja de la alternativa de POJOs es que se trata de objetos muy ligeros.
Los POJOs no aaden ningn tipo de carga de proceso adicional (gestin
de transacciones, gestin de seguridad, control de sesiones, etc.) y por lo
tanto resultan muy fciles de implementar, presentan un sencillo
mantenimiento y tienen un gran rendimiento.

Por el contrario, la gran desventaja de los POJOs es que no ofrecen la
funcionalidad que nos pueden ofrecer los EJBs. Obviamente, si no
necesitamos ninguno de esos servicios, utilizar POJOs se convierte en
una recomendacin bsica para la creacin de aplicaciones empresariales
con un buen rendimiento.

- Capa de integracin
Para realizar el acceso a los datos usaremos la tecnologa JDBC. Esta es
la opcin ms sencilla para la implementacin de la persistencia en
aplicaciones J2EE. La principal ventaja de utilizar JDBC es que es con
creces la tecnologa ms ligera ya que no aade ningn tipo de
funcionalidad adicional, salvo la de acceso a datos.

- Capa de entidades
Esta capa proporciona objetos de intercambio de informacin entre las
capas. Estos objetos siempre sern JavaBeans simplificados, dado que
no haremos que implementen java.io.Serializable. Es decir sern clases
java cuyas propiedades deben ser accesibles mediante mtodos get y set,
adems de los mtodos autocontenidos (que combinan varias
propiedades).

Es decir, de todas las opciones posibles que aporta una arquitectura tpica J2EE
trabajaremos a lo largo del curso sobre la indicada en la figura
Programacin Web con J2EE
11 / 26

En nuestra arquitectura el cliente ser nicamente un cliente web (navegador que
interpreta pginas web). Si hiciramos un zoom del contenedor Web veramos que aqu
tendremos las cuatro capas con los JSP, Servlets, POJOs, clases de acceso a datos que
usan JDBC y las entidades. Esto es:



Programacin Web con J2EE
12 / 26
Como se observa en el dibujo existen 3 capas verticales y una horizontal comn a todas
las dems. Es por ello que se habla siempre de Arquitectura de 3 capas.

OTA 1:
Si en un futuro quisiramos usar EJBs y hacer distribuida nuestra aplicacin bastara
con
- convertir las clases POJO de lgica de negocio a EJB (de tipo Session Stateless)
- hacer que los javabeans de Entidades implementen Serializable (implements
java.io.Serializable)

Gracias a la innovacin de las anotaciones introducidas en Java 1.5 la conversin entre
POJO y EJB es prcticamente inmediata. Si se tiene inters en este punto aconsejamos
ver el siguiente enlace:
http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=AnotacionesEJB3

OTA 2:
El motivo de evitar usar datos primitivos en la comunicacin entre capas es debido a
que al pasar a usar EJBs si se manejan objetos de intercambio reducimos el nmero de
comunicaciones RMI a travs de la red, aumentando la velocidad de la aplicacin. Este
es el principio del patrn Transfer Object. Por ejemplo, si quisieramos recuperar los
datos de un usuario, en vez de hacer 4 llamadas a getNombre, getPassword,
getDireccion y getApellidos haramos una nica llamada a getDatosCliente.

Por completar y dar una visin ms simplificada de todo lo anterior veamos la siguiente
figura:



Tendremos un navegador Web en la mquina cliente que acceder a nuestro servidor
J2EE compuesto nicamente de un contenedor Web a travs del cual accederemos a una
base de datos.

En nuestro curso usaremos como base de datos MySQL y como servidor J2EE el
servidor Tomcat que viene incluido con la herramienta de desarrollo NetBeans.

En el siguiente apartado, dado que en esta primera sesin vamos a instalar el IDE
NetBeans junto con el servidor Tomcat, veremos detalles nuestro entorno de desarrollo.
Programacin Web con J2EE
13 / 26
3 Entorno de desarrollo
Nuestro entorno de desarrollo estar compuesto por las siguientes herramientas:
- JDK 1.6.X
Este software es la plataforma de desarrollo Java, que incluye su Java
Development Kit (JDK), su Java Runtime Enviroment (JRE) y
herramientas de desarrollo de lnea de comandos. NetBeans requiere de
este JDK para funcionar.
- NetBeans IDE 6.X
Mediante este IDE crearemos pginas web esttica, dinmicas, proyectos
Java, compilaremos y depuraremos. Adems usaremos como servidor de
aplicaciones el servidor Tomcat que viene integrado con NetBeans.
- MySQL 5.X
Usaremos MySQL como Base de Datos. Las principales ventajas de esta
base de datos es que es gratuita, ofrece un SGDB (sistema gestor de base
de datos), es escalable, admite procedimientos almacenados, etc. En este
curso veremos como acceder a las bases de datos desde JDBC. La parte
correspondiente a la creacin de base de datos, tablas, datos iniciales, etc.
se realizar mediante scripts preparados por el profesor.

Todo este software se encuentra disponible tanto para Linux, como para Windows. El
alumno elegir en que plataforma desea realizar el curso.

En esta primera sesin no realizaremos ms que la instalacin del JDK y del IDE
NetBeans, de modo que en la segunda sesin podamos comenzar a utilizarlo. Esta
instalacin queda explicada en los ejercicios. Junto con NetBeans viene incluido un
servidor Tomcat. Veamos una explicacin ms detallada de ambas herramientas.
3.1 NetBeans
El IDE NetBeans es una herramienta para programadores pensada para escribir,
compilar, depurar y ejecutar programas. Es un producto libre y gratuito sin restricciones
de uso que soporta el desarrollo de todos los tipos de aplicaciones Java (J2SE, web, EJB
y aplicaciones mviles). Esta completamente escrito en java. La versin actual es
NetBeans IDE 6.5.

Este IDE es una aplicacin de cdigo abierto ("open source") diseada para el
desarrollo de aplicaciones fcilmente portables entre las distintas plataformas, haciendo
uso de la tecnologa Java.

Dispone de soporte para crear interfaces grficas de forma visual, desarrollo de
aplicaciones web, control de versiones, colaboracin entre varias personas, creacin de
aplicaciones compatibles con telfonos mviles, resaltado de sintaxis y por si fuera poco
sus funcionalidades son ampliables mediante la instalacin de packs.

Con NetBeans es posible desarrollar tanto aplicaciones de escritorio, como aplicaciones
empresariales en varias capas, o programas para todo tipo de dispositivos.

NetBeans, como proyecto esta financiado principalmente por Sun Microsystem, que
despus de comprar el producto, lo regal al mundo como proyecto de cdigo abierto,
Programacin Web con J2EE
14 / 26
lo que le asegura un largo camino de la mano de los creadores de la plataforma y
lenguaje JAVA

3.2 Apache Tomcat
Apache Tomcat es sin lugar a dudas el proyecto de software libre ms famoso
escrito en Java. Creado a partir de cdigo donado por SUN Microsystems a la Apache
Software Foundation, ha crecido hasta convertirse en la implementacin oficial de
referencia de Servlets y JSP sustituyendo a la implementacin de SUN original. Esto lo
convierte, obviamente, en el contenedor web J2EE por excelencia.

Aunque siempre se le ha acusado de un rendimiento pobre, el caso es que a partir de
las nuevas versiones de la serie 4.x, creadas para cumplir las especificaciones 2.3 de
Servlets y 1.2 de JSP, Tomcat se ha reescrito entero con lo que ha mejorado
considerablemente su rendimiento. Quizs siga sin ser la opcin ms indicada para una
aplicacin con miles de clientes simultneos, pero ningn servidor en solitario es
adecuado para una carga as. En todos los dems casos su rendimiento es ms que
aceptable.

Puede integrarse sin demasiados problemas con el servidor web Apache,
y para aplicaciones empresariales grandes con servidores de aplicaciones J2EE como
JBoss o Jonas, aprovechando de este modo sus contenedores EJB.

Es ms, Tomcat es el contenedor web que ms se est utilizando en servidores de
aplicaciones comerciales, donde gigantes como IBM con su WebSphere ha elegido a
Tomcat como contenedor web.

En nuestro entorno de desarrollo usaremos el servidor Tomcat que viene incluido con
NetBeans como servidor J2EE de Servlets y JSP.

Como curiosidad cabe destacar que otros entornos de desarrollo, tanto libres como
comerciales tambin aaden Tomcat en su distribucin. Ejemplos de esto son Borland
JBuilder o Eclipse.
Programacin Web con J2EE
15 / 26
4 Ciclo de vida de desarrollo Web
Una aplicacin Web J2EE consiste en componente Web, ficheros de recursos como
imgenes, libreras, etc. El contenedor web donde se ejecuta esta aplicacin proporciona
servicios de soporte que permite que esos componentes sean ms fciles de desarrollar.
Sin embargo, dado que estas aplicaciones deben ser desplegadas en el contendor Web el
proceso de creacin y pruebas es diferente al de las aplicaciones tradicionales de
escritorio. Este proceso de crear, desplegar y ejecutar aplicaciones Web J2EE puede ser
resumido como se indica a continuacin:
1. Crear el cdigo del componente J2EE
2. Crear el descriptor de despliegue de la aplicacin web (XML)
3. Compilar los componentes y clases referenciadas por esos componentes
4. Crear el empaquetado(o paquete) correspondiente
5. Desplegar la aplicacin en el contenedor Web a travs del empaquetado
correspondiente
6. Acceder a la URL que referencia la aplicacin Web

Este es el proceso genrico de desarrollo Web, a lo largo del curso veremos como
Netbeans proporciona todo este proceso prcticamente automatizado, pasando
directamente del paso 1 al 6.
Programacin Web con J2EE
16 / 26
5 Ejercicios
Realiza los siguientes ejercicios y enva el segundo al profesor en un comprimido
con tu nombre y apellidos al profesor.(Ej: vperezcabello_sesion1.zip)

OTA:
Este primer tema es introductorio y su principal objetivo es centrar al alumno en el
entorno sobre el que va a trabajar antes de ponerse a tratar temas ms especficos. Es
por ello que este primer tema nicamente tiene contenido terico.

En futuros temas los ejercicios sern, casi en su totalidad, prcticos.
5.1 Instalar JDK y NetBeans
El alumno elegir la plataforma en que quiere realizar el curso, dado que todo el
Software con el que se trabajar esta disponible tanto en Linux como en Windows.
5.1.1 JDK
En primer lugar debemos instalar el JDK, dado que es la base de nuestro desarrollo.
1. Descargaremos de la direccin http://java.sun.com/javase/downloads/index.jsp
la ltima versin JDK 6 (aunque las pantallas de ejemplo sean de Update2, el
alumno descargar la ltima versin, es decir Update18)








Programacin Web con J2EE
17 / 26



2. Instalamos en nuestro ordenador el software descargado

a. Ejecutamos el instalador descargado y pulsamos aceptamos la licencia






















b. En la siguiente pantalla indicamos que no queremos instalar todas las
caractersticas. En concreto evitaremos instalar la parte de Demos and
Simples y de JavaDB. Para ello pulsaremos sobre la flecha e
indicaremos que no queremos instalar esas caractersticas.


















Programacin Web con J2EE
18 / 26


De este modo esta pantalla queda como indica la figura.



Pulsamos Next.
c. Veremos el progreso de instalacin























Programacin Web con J2EE
19 / 26
d. Con esto hemos instalado la primera parte de la plataforma de desarrollo
Java, pasamos ahora a instalar la JRE correspondiente. Dejaremos que se
instalen todas las opciones. Pulsamos Next






















e. Veremos el progreso de instalacin.





Programacin Web con J2EE
20 / 26
f. Una vez instalado pulsaremos Finish

























Programacin Web con J2EE
21 / 26
5.1.2 Netbeans

OTA:
Nosotros utilizaremos la version etBeans 6.0.1 y no la versin 6.8, dado que nuestras
necesidades quedan de sobra cubiertas con la versin indicada. Pueden observarse las
caractersticas de cada versin en:
http://www.netbeans.org/community/releases/roadmap.html

Este curso tiene todas las capturas de pantalla dirigidas a esta versin de NetBeans. El
alumnado aprender de este modo el manejo adecuado del IDE. En el momento que
NetBeans suba la versin de 6 a 7 se reescribir el curso para esa nueva versin, pero no
para las sucesivas actualizaciones menores (6.X) de la herramienta.

Los pasos para instalar NetBeans en el ordenador son
3. Descargaremos de http://download.netbeans.org/netbeans/6.0/final/ la versin
etBeans 6.0.1 Web & Java EE

1. Instalamos en nuestro ordenador el software descargado. Vemoslo por
pantallas:

a. Ejecutamos el instalador descargado. Indicaremos que no queremos
instalar GlassFish, dado que este es un contenedor de EJBs que no
requerimos para nuestro curso. Pulsamos Next













Programacin Web con J2EE
22 / 26
b. Leemos la licencia, la aceptamos y pulsamos Next


c. Dejamos el nombre del directorio de instalacin por defecto, elegimos el
JDK correspondiente (el que hemos instalado anteriormente) y pulsamos
Siguiente




Programacin Web con J2EE
23 / 26
d. Dejamos el nombre del directorio de instalacin del contenedor Web
Tomcat y pulsamos Siguiente



e. Pulsamos Install



f. Una vez se ha realizado la instalacin, desmarcamos el registro y
pulsamos Finish
Programacin Web con J2EE
24 / 26


2. Ejecutamos Netbeans a travs del enlace del escritorio y veremos la
pantalla del programa



















Programacin Web con J2EE
25 / 26
5.2 Cuestionario
Contesta a las siguientes preguntas

1. El proceso de desplegar (hacer deploy) una aplicacin en un servidor J2EE
a. Requiere que el servidor J2EE sea comercial
b. Comprende haber empaquetado previamente los componentes
c. Este proceso es nico de NetBeans, otras herramientas como Eclipse no
son capaces de hacerlo
d. Comprende haber compilado correctamente el cdigo, no es necesario
empaquetarlo previamente a su despliegue

2. NetBeans
a. Es un IDE de desarrollo comercial
b. Es un producto libre financiado por SUN
c. Aade en su instalacin un servidor J2EE
d. La b y la c son correctas

3. Elige la correcta:
a. Un servidor J2EE siempre tendr un contenedor Web
b. Un servidor J2EE siempre tendr un contenedor Web y uno EJB
c. Un servidor J2EE siempre tendr un contenedor EJB
d. Un servidor J2EE siempre tendr un contenedor de Applets

4. Respecto a la arquitectura J2EE que seguiremos a lo largo del curso
a. Es una arquitectura de tres capas: Presentacin, Negocio e Integracin y
usaremos tipos primitivos para el intercambio de informacin
b. Es una arquitectura de tres capas: Presentacin, Negocio e Integracin y
para el intercambio de informacin usaremos una cuarta capa paralela a
todas las dems que proporciona los objetos Javabeans simplificados.
c. Es una arquitectura monocapa, dado que implementaremos todo en un
contenedor Web
d. Ninguna de las anteriores es correcta

5. En el desarrollo que haremos a lo largo del curso
a. Usaremos EJBs desplegados en el contenedor Web Tomcat
b. Usaremos clases tipo POJO para implementar la capa de negocio
c. Usaremos Servlets para realizar el acceso a base de datos
d. Usaremos JSP para implementar la capa de negocio

6. Entre los componentes Web de J2EE estn:
a. EJBs
b. Servlets y JSPs
c. Clases que usan la tecnologa JSP
d. Pginas HTML, Applets y aplicaciones de escritorio






Programacin Web con J2EE
26 / 26
7. Dado que nuestros desarrollos tendrn lugar por completo dentro de un
contenedor Web J2EE el empaquetado resultante ir en un archivo de tipo
a. WAR
b. JAR
c. EAR
d. RAR

8. En una aplicacin J2EE bien construida:
a. Nunca las comunicaciones entre capas saltarn de una capa a otra sin
pasar por la intermedia.
b. La comunicacin entre capas ser siempre a travs de objetos de la capa
de entidades, y no a travs de tipos primitivos
c. Nunca capas inferiores llamaran a las superiores
d. La a y c son correctas. La b es aconsejable.

9. En nuestras aplicaciones el uso de EJBs supondra
a. recodificar toda la aplicacin
b. nicamente usar un servidor J2EE comercial
c. Convertir las clases usadas en lgica de negocio a EJB (mediante
anotaciones por ejemplo) y hacer que los clases de la capa de Entidades
implementen Serializable
d. Ninguna de las anteriores es correcta

10. Una aplicacin J2EE
a. Siempre debe usar EJBs puesto que viene definidos en la especificacin
J2EE
b. Usar EJBs o no dependiendo de si queremos que la aplicacin sea
distribuida, escalable y capaz de soportar miles de usuarios.
c. Siempre debera usar EJBs puesto que el rendimiento de la aplicacin
aumenta
d. El uso de EJBs o no depende del tipo de aplicacin, por ejemplo, si es
una aplicacin comercial siempre deber hacer uso de los EJBs.

También podría gustarte