Sie sind auf Seite 1von 17

1.

1 Aplicacin Empresarial

Servidor aplicaciones. Tienen como objetivo comunicarnos con diferentes aplicaciones y tambin darle
servicios a diferentes clientes: Cliente web, Cliente mvil o Aplicaciones de escritorio.

Adems estos servidores tambin cuentan con seguridad (LDAP) o un directorio activo donde se registran los
roles y permisos que un usuario puede tener dentro de una empresa.

Este usuario procede a consultar informacin de BD de la empresa o BD de inteligencia de Negocios, adems
tambin pueden acceder a Sistemas Legados que pueden ser manejadores de contenidos (CMS) o Sistemas de
Administracin de la empresa, que han sido desarrollados a lo largo de los aos.

Tambin pueden comunicarse con servicios de terceros, a travs de Web Services.

Tambin podramos tener ms informacin de la empresa almacenada, conocida como Enterprise Information
System. Cualquier informacin almacenada en archivos, BD, etc.


Las Aplicaciones Empresariales Java tienen a su cargo establecer las redes de negocio de la empresa o del
sistema a desarrollar.

Adems ofrecer conectividad a los diferentes tipos de clientes, ofreciendo una solucin integral a la medida.

JEE 6.0 es independiente de la plataforma, no importa si son de paga o no.

Un API es un conjunto de clases que nos permiten resolver una necesidad en particular.
Ej. La API de JDBC permite establecer comunicacin con una base de datos.

Java EE es un conjunto de APIs enfocadas en bridar servicios empresariales (Ej. Transaccionalidad, seguridad,
persistencia de objetos, manejo de objetos distribuidos, etc).
Estas APIs se basan en un conjunto de especificaciones las cuales pueden ser implementadas por Empresas
que desarrollan software libre: apache, Jboss O de paga como son Oracle IVM, etc.

Algunas de estas APIs son:
- JTA. Java Transaction API
- JPA. Java Persistance API
- JMS. Java Message Service

La ventaja de estas APIs es que son un estndar.

Historia de las versiones Empresariales Java


Caractersticas Tecnolgicas de Java EE
La tecnologa empresarial de java EE incluye muchas mejoras en cada una de las tecnologas que la componen
en particular se enfocan en simplificar la integracin de varios componentes a travs del concepto CDI,
tambin el uso de anotaciones y el manejo de POJOs permiten simplificar el desarrollo en Java EE.

Podemos observar en la figura los tipos de tecnologas que podemos utilizar en cada uno de los clientes o en
cada una de las capas de nuestra aplicacin empresaria l.

Por ejemplo en el caso de los clientes como puede ser un Applet o una aplicacin de escritorio podemos usar
diferentes tipos de tecnologas.
- En el caso de applet tenemos acceso a la versin estndar de java.
- Para el caso de una aplicacin de escritorio tenemos acceso a tecnologas como puede ser: JNDI, JMS,
RMI, JDBC, directamente en nuestras aplicaciones de escritorio.

Esas aplicaciones a su vez pueden utilizar un contenedor web o un servidor de aplicaciones java,
Estos servidores de aplicaciones en caso de ser un contenedor web podemos utilizar la tecnologa JSP o
Servlets.

Y si es un servidor de aplicaciones tenemos acceso a las APIs como pueden ser JNDI, JMS, JTA, MAIL, RMI, JDBC.

Si nicamente estamos utilizando servidores como Tomcat, Jetty, entre algunos otros contenedores web, no
tenemos acceso a las apis de JEE solo aplicaciones bsicas de JNDI, JTA y JDBC. Si queremos utilizar por
completo necesitamos un servidor de aplicaciones que pueden ser como JBOSS, Glassfish, Weblogic, entre
otros servidores de aplicaciones web java.

Los Clientes, las aplicaciones de escritorio se pueden conectar via RMI, para ubicar nuestros objetos como
pueden ser EJB.

Por lo tanto por la via RMI nos conectaremos a nuestro contenedor EJB, este contenedor EJB puede estar
embebido en nuestro propio servidor de aplicaciones o puede estar ubicado en un servidor distinto donde esta
contenido nuestro contenedor web.

Por lo tanto nuestro servidor puede contener tanto al contenedor Web y al contenedor EJB o cada uno en un
servidor distinto.

La tecnologa de los EJB tambin tiene acceso a APIs como pueden ser JNDI, JMS, JTA, MAIL, RMI, JDBC. Pero
para esto, se requiere un servidor exclusivo para poder ejecutar estas aplicaciones si se contienen al
contenedor Web y al contenedor EJB en un solo servidor estas APIs no funcionaran.

Aunque con la tecnologa Java EE 6.0 a nivel de performans puedan administrar tanto contenedores web
como contenedores EJB a esto se le conoce como el perfil web de un servidor de aplicaciones como puede
ser Glassfish o JBoss

Y cada uno de estos clientes se puede conectar directamente a una base de datos



www.oracle.com/technetwork/java/javaee/tech/index.html
1.3 Java Enterprise Edition.
En una aplicacin JEE podemos utilizar tecnologas como EJB, JPA, Web Services, entre muchas otras.

A esto se le conoce como el stack de tecnologas d ela versin empresarial y podemos verlo simplemente como
una extensin de la versin extandar de java.

Por ejemplo para la capa de presentacin en la versin empresarial de java podemos utilizar java server faces
en su versin 2. El cual en ves de utilizar JSPs ahora utiliza la tecnologa de los Facelets como tecnologa de
despliege de informacin.

Adems hemos comentado que la API de CDI, nos permite integrar las diferentes tecnologas y establecer la
comunicacin e inyeccin de dependencias por ejemplo entre JSF y los Enterprise Java Beans.

Esta versin 6 agrega los EJB 3.1 y normalmente con esta tecnologa vamos a administrar los servicios de
negocio de nuestra aplicacin empresarial.

Tambin tenemos acceso a la API de JAX-RS para el manejo de Web Services utilizando REST. Y tambin la API
de JAX-WS para el manejo de Web Services utilizando SOAP.

Y para la conectividad con nuestra base de datos podemos utilizar la tecnologa de JPA v2.

En la versin JEE 6 se ofrece adems nuevas caractersticas tales como el empaquetamiento de EJBs locales en
un archivo WAR (Web Archive File), anteriormente tenamos que crear un archivo conocido como EAR
(Enterprise Archive File) el cual empaquetaba nuestras clases JAVA en archivos JAR (Java Archive File) y la parte
Web la empaquetaba en un archivo WAR, estos dos se combinaban y se creaba un archivo EAR.

Se simplifico la integracin entre Java Server Faces y EJBs JPA a traves de CDI (Contexts and Dependency
Injection)

Este concepto de CDI es muy similar al manejo de inyeccin de dependencia por ejemplo en Frameworks como
Spring.

Y JPA implementa conceptos de framewors como son javer net por lo tanto si tenemos conocimientos de
tecnologas como spring o javer net es mucho mas fcil entender y aplicar estos conceptos en nuestras
aplicaciones empresariales Java.

Otras de las mejoras que se agregaron a Java EE 6 son un contenedor ligero, para hacer el contenedor mas
ligero empresarial se introdujo el concepto de perfiles donde podemos celeccionar el conjunto minimo de
tecnologas a utilizar, por ejemplo si una aplicacin web necesita de EJBs pero no de servicios web se puede
utilizar EJB lite el cual se enfoca en utilizar nicamente las caractersticas bsicas de los EJBs.

Tambin se agregaron caractersticas para remover APIs antiguas, esto se le conoce como PRUNING por lo que
se plante que para versiones futuras de Java EE se eliminen algunas APIs ya que en varios casos se estn
sustituyendo nuevas APIs y ya no es necesario utilizar ms, las APIs antiguas y por ultimo esta versin sigue
enfocada en la facilidad de uso, as con el uso de anotaciones se ha simplificado en gran medida la
configuracin de archivos XML, y por lo tanto los archivos de configuracin de las diferentes tecnologas
empresariales se ha resumido en muchos casos a unas cuantas lneas de cdigo he incluso en varios casos ya es
opcional agregar o no esos archivos de configuracin, adems las clases estn orientadas a clases puras de java
conocida como POJOs. y tambin se promueve el uso de interfaces, esas ideas se han tomado de las buenas
prcticas de los frameworks libres de java como puede ser spring, struts y javer net. Por lo tanto todas estas
tecnologas despus de una dcada de aprendizaje en desarrollos java es al da de hoy mucho ms simple
aplicarlos en nuestros desarrollos empresariales



1.4 Arquitectura Multicapas en Java EE
Una aplicacin empresarial en java se compone de distintas capas, cada capa tiene una funcin muy especfica,
dividir una aplicacin en capas tiene varias ventajas, como son separacin de responsabilidades, un mejor
mantenimiento a la aplicacin, especializacin de los programadores java en cada una de las capas, entre
muchas ms.
La versin empresarial de java brinda, una o varias APIs para cada una de las capas de una aplicacin
empresarial, desde la capa de presentacin, la capa de negocios y la capa de datos.

Para comenzar debemos tener un servidor de aplicaciones java donde podamos ejecutar nuestras aplicacin.
Luego un cliente solicita una peticin a nuestra aplicacin y si es una aplicacin Web, en este caso
tenemos nuestra capa de presentacin, la tecnologa de JSF utiliza el patrn de MVC, este patrn
significa MODEL VIEW CONTROLER, entonces tenemos un controlador, una vista y clases de modelo.
Posterior a la capa de presentacin tenemos nuestra capa de negocio, esta capa de servicio contienen
la lgica del negocio de nuestra aplicacin y puede exponer esta lgica de negocio a travs de web
services.
Y finalmente estos objetos de negocio necesitan interactuar con informacin de nuestra base de datos.
Sin embargo no lo hacen directamente si no a travs de objetos que utilizan la tecnologa JPA y
utilizando unos patrones de diseo como pueden ser DAO y DTO, podremos interactuar y recuperar
informacin de nuestra base de datos. Por lo tanto la API de JPA se va a encargar de la persistencia y
recuperacin de informacin en nuestra base de datos.

Por lo tanto una peticin de un cliente, pasa por tres capas, en primera instancia pasa por la capa de
presentacin, posteriormente se comunica con nuestra capa de negocio y finalmente esta capa de negocio
recupera o almacena informacin de la base de datos. Y comienza de regreso la respuesta hacia nuestro
cliente, la capa de datos, regresa la informacin a la capa de negocios, la capa de negocios aplica las reglas
necesarias y finalmente la capa de presentacin le muestra el resultado a nuestro cliente.

Este es el flujo que se sigue en una arquitectura multicapas
Una aplicacin multicapas no necesariamente va a aplicar todas las tecnologas disponibles. Por ejemplo
pudiera no ser necesario exponer la lgica del negocio a travs de Web services, as que no utilizaremos todas
las tecnologas en un proyecto empresarial.



1.5 instalacin de JDK de Java
El objetivo del ejercicio es instalar JDK de java.
Descargar el Java Development Kit (JDK) de la siguiente ruta:
o http://www.oracle.com/technetwork/java/javase/downloads/index.html
Y ejecutamos l .exe
o Seguimos los pasos necesarios para su instalacin
o Tambin se instalara el JRE y Java FX
Al final de la instalacin se configuraran las variables de entorno.

Configuracin de Variables de entorno
Propiedades del sistema
Configuraciones avanzadas del sistema
Variables de entorno
Agregar una variable
o Nueva...
Nombre de la variable: JAVA_HOME
Valor de la variable: C:\Program Files\Java\jdk1.7.0_04

Segundo paso modificar nuestra variable Path
o Introducir al comienzo del valor de la variable:
%JAVA_HOME%\bin;

Finalmente comprobamos que ya tengamos configurado nuestro JDK, con ello abrimos el CMD
Y desde c:\>
o Introducimos
echo %JAVA_HOME%
el cual nos especificara la ruta donde quedo configurado nuestro JDK
o el segundo comando a introducir es
java version y javac -version
el cual nos regresara la versin que instalamos en este caso 1.7.0_04
1.6 Instalacin de Eclipse
o Podemos descargar la ltima versin de Eclipse de la pgina:
http://www.eclipse.org/downloads/
o En este caso descargaremos Eclipse IDE for Java EE Developers
Para Windows 64bits
o Y basta con solo descomprimir el programa y colocarlo en un lugar donde lo podamos ubicar
con facilidad, por ejemplo archivos de programa.

1.7 Instalacin de MySQL
o Descargar los siguientes complementos antes de instalar MySQL y MySql Workbench
http://dev.mysql.com/resources/wb52_prerequisites.html
Los cuales son necesarios para poder correr MySql Workbench
Estos son Microsoft .NET Framework 4 Client Profile
Y Microsoft Visual C++ 2010 Redistributable Package (x86)
o Una vez instalados se reinicia el sistema.
Ahora si ya procedemos a descargar he instalar MySQL
Desde su pagina
o www.dev.mysql.com/downlods/
Descargamos
o MySQL Community Server
o MySQL Workbench (GUI Tool) para administrar nuestra BD.

Procedemos a instalar MySQL Community
o Lo descargamos y lo ejecutamos
Le damos en instalar
Instalacin tpica.
Dejamos la opcin de Launch MySQL Instance Configuration Wizard
o Y le damos en finalizar
Despues nos abrir una nueva ventana que nos dara la oportunidad de configurar una instancia de
MySQL al cargar nuestro equipo.
Tambin nos permite configurar el Path de Windows.
o Despus configurar el nombre del usuario y su contrasea.

Para verificar que se instalo correctamente, basta con introducir dentro del CMD
Mysql
o El cual nos permitir entrar a la consola de mysql
Despus colocamos
o show databases
el cual nos permite instalar y configurar nuestra base de datos.

Una vez instalado los prerrequisitos y MySQL Community Server procedemos a descargar de la pagina
o www.dev.mysql.com/downloads/workbench/5.2html
o Descargamos y ejecutamos.
Instalacin completa.
Finalizar.

Esta aplicacin nos permite realizar consultas

Modelar nuestro esquema de identidad Relacin de base de datos.


Y administrar nuestras bases de datos puede ser locales o remotas


Una vez instalado MySQL WorkBench nos da una configuracin inicial bsica


En caso de que no la tuviramos, se procede a crear una nueva instancia: New Server Instance
LocalHost/Remote Host y le damos next.
Dejamos los datos por default de MySql
o Conexin: Estndar(TCP/IP), Hostname: localhost, Port: 3306, Username: root y si nos pidiera
el password seria por default admin o la que usted coloco en un comienzo.
Damos en siguiente y nos indicara si se configuro correctamente.
o Para asi pedirnos un nombre para nuestra instancia: mysqld@localhost



Le damos doble clic y nos mandara a un editor SQL.

Ahora crearemos una nueva base de datos (Create a new Schema in the connected server).


Le colocamos un nombre, por ejemplo recursos_humanos

Ahora crearemos una nueva tabla, dentro de recursos humanos, le damos un nombre, por ejemplo persona




Enseguida le damos clic en la pestaa de la derecha para que nos muestre los campos de la taba.


He insertamos nuestras columnas, con sus propiedades



Una vez configuradas las columnas necesarias le damos en aplicar.

Nos mostrara el SQL Starement(s) a ejecutar, si todo est bien le damos en Apply.



Le damos finalizar y verificamos que realmente se haya creado la tabla con sus campos.


Ahora procedemos a insertar registros.

Instalacin de Glassfish
Se puede descargar Glassfish (versin libre) del siguiente link:
http://glassfish.java.net/public/downloadsindex.html
Sin embargo tambin puede descargarse desde Eclipse y configurar este servidor de aplicaciones java.

Instalacin por medio de Eclipse:
Nos vamos a la pestaa servers
o New server wizard
En caso de que no nos aparezca le damos en Window > Show view > Other
o Y le damos buscar server y le damos ok



Y seleccionamos el server a instalar, dependiendo de la compaa y la versin. En caso de que no nos aparezca
el server le damos en Download additional server adapters



Seleccionamos Oracle GlasFish Server Tools, aceptamos la licencia y le damos en aceptar. Una vez terminado
se reiniciara nuestro IDE.

Una vez descargado el adaptador Nos vamos a la pestaa servers
o New server wizard
Ahora nos aparecer la carpeta GlassFish y seleccionamos la versin a instalar en este caso 3.1.2 le damos en
siguiente.
Nos aparecer la siguiente ventana, si queremos modificar o cambiar nuestro JREy no nos aparece ms que el
de Default le damos en installed JRE preferences.


Y nos aparecer los JDK que tenemos disponibles le damos en Add


Seleccionamos un Estndar VM


Y debemos de proporcionar la ruta donde lo instalamos, en este caso fue en C:\Program Files\Java\jdk1.7.0_04
De inmediato se no cargaran todas las libreras necesarias y le damos en aceptar.


Ahora si indicamos que queremos el JDK1.7.0_04 es el que queremos y en Application Server Directory:
indicamos la ruta donde queremos que se instale el server y le damos en Install Server



Aceptamos la licencia y le damos en aceptar.

Y comenzara la descarga, una vez finalizada la descarga le damos en siguiente.
Proporcionamos el password del admin y finalizamos.

Para comprobar que se ha inicializado correctamente, le damos en GlassFish clic derecho, GlassFish, View
Admin Console.



Y nos aparecer nuestro servidor, recuerde que el puerto 4848, se utiliza para la consola de administrador.

Y para revisar que est desplegando las aplicaciones correctamente le damos http://localhost:8080/ y nos
mostrar la ventana donde se desplegaran nuestras aplicaciones web.

10. Integracin Maven y Eclipse
* Objetivo del ejercicio es crear el Hola Mundo con la tecnologa Java EE y Maven, que es la herramienta que
utilizaremos a lo largo del curso.

Al final deberemos observar el siguiente resultado:



Primer paso instalar el plug-in de Maven en Eclipse, el cual lo podemos obtener de Eclipse Market:



Escribimos MAVEN y le damos Enter para que lo busque


Maven es una herramienta de software para la gestin y construccin de proyectos Java

Cuando se carguen las aplicaciones, procedemos a instalar:
Maven Integration for Eclipse
Maven Integration for Eclipse WTP

Se cargaran los archivos, aceptamos los trminos y le damos en Finish.
Y se reiniciara Eclipse.

Para actualizar nuestras dependencias y podamos visualizar todas nuestras libreras de maven hacemos lo
siguiente.

Windows > show view> Other
Y filtramos por MAVEN

Lo cual nos mostrara MAVEN Repositories, dejamos que se carguen todos los repositorios



En caso de que no se carguen los repositorios, lo hacemos manualmente von Rebuild Index


Ahora procedemos a instalar Maven Integration for Eclipse WTP de la misma forma.
El proceso es idntico al del plugin anterior.





11. Crear un proyecto utilizando MAVEN
FILE > New > Other
Maven Project
o Seleccionamos la ubicacin por Default, damos next
o Nos aparecern los artefactos (platillas, para crear nuestro proyecto), seleccionamos la que
dice maven-archetype-webapp y damos next.
o Nos pedir un Group id: por ejemplo. mx.ids
o El nombre del Artefact Id: es el nombre de nuestro proyecto, ejemplo. holamundo-JEE
o Damos clic en Finish.

Se crea una estructura de nuestro proyecto.


Dentro de Webapp se crea un archivo index.jsp el cual podemos trascribir, el cual se ejecuta de manera
automtica para ejecutar nuestro proyecto.

El archivo web.xml es nuestro archivo de configuracin de nuestra aplicacin web.

Dentro de index.jsp introducimos el siguiente cdigo de JSP:


Revisamos en la pestaa Server y verificamos que tengamos a Glassfish no importa que nos aparezca
[stopped] este se inicializa por si solo cuando corramos el proyecto.
Damos clic derecho sobre el Proyecto> Run As > 1 Run on Server
Seleccionamos el servidor sobre el que vamos a desarrollar el proyecto, en este caso Glassfish
Seleccionamos nuestra aplicacin a desarrollar (ejecutar) y damos en Finish.
Se levantara nuestro servidor y nos mostrara nuestra aplicacin web en ejecucin en el puerto 8080

Das könnte Ihnen auch gefallen