Download Instalación y configuración de las herramientas para Java EE 5 por

Document related concepts
no text concepts found
Transcript
Curso: Desarrollo de aplicaciones en
Java EE 5 en base a frameworks
Instalación y configuración
de las herramientas para Java EE 5
por: María Consuelo Franky
Dpto. Ingeniería de Sistemas
Pontificia Universidad Javeriana
email: [email protected]
colaboración de los estudiantes:
Francisco Mora y Adrián Otálora
Enero de 2011
pg. 1
Curso: Desarrollo de aplicaciones en
Java EE 5 en base a frameworks
Tabla de Contenido
1
Propósito de este documento .................................................................................................................. 3
2
Lista de instalaciones que deben realizarse .......................................................................................... 3
3
Instalar el JDK 1.6................................................................................................................................... 4
4
Instalar Eclipse IDE for Java EE Developers ....................................................................................... 4
5
Instalar plugins JBoss Tools para Java EE 5 ....................................................................................... 5
6
Instalar plugins adicionales para Eclipse .............................................................................................. 6
7
6.1
Plugin Subversion ............................................................................................................................................ 6
6.2
Plugin TestNG .................................................................................................................................................. 7
Instalar el Servidor JBoss ....................................................................................................................... 7
7.1
Instalación básica............................................................................................................................................. 7
7.2
Cambiar opcionalmente el puerto 8080........................................................................................................... 7
7.3
Configuración adicional del servidor JBoss ................................................................................................... 8
7.4
Inscribir el servidor JBoss en Eclipse ............................................................................................................. 9
8
Instalar el framework Seam ................................................................................................................. 10
9
Instalar el framework Taylor ............................................................................................................... 10
10 Instalación y configuración del motor de base de datos PostgreSQL .............................................. 11
pg. 2
Curso: Desarrollo de aplicaciones en
Java EE 5 en base a frameworks
1
Propósito de este documento
En este documento se describe la instalación en MS-WindowsXP del software que se necesita
para configurar un ambiente de desarrollo (IDE) Eclipse que sea adecuado para el desarrollo
de aplicaciones Java EE 5 y para el uso de frameworks de generación de código Java EE 5.
Siguiendo las instrucciones se logrará tener un ambiente Eclipse 3.4.2 con plugins de
software libre, que es equivalente en funcionalidad a “JBoss Developer Studio”, ambiente
distribuido por RedHat al costo de US $ 99 por desarrollador por año. En este ambiente se
utilizará el framework Seam para generar aplicaciones Java EE 5.
Sobre la misma versión de Eclipse 3.4.2 se podrá instalar como plugin el framework Taylor
el cual permtirá el modelaje de entidades.
2
Lista de instalaciones que deben realizarse
BASICO
•
JDK 1.6:
obtener jdk-6uXX-windows-i586.exe del sitio de Oracle (donde XX es la última versión
encontrada):
http://www.oracle.com/technetwork/java/javase/downloads/index.html
•
Eclipse IDE for Java EE Developers 3.4.2 :
obtener eclipse-jee-ganymede-SR2-win32.zip del sitio:
http://www.eclipse.org/downloads/packages/release/ganymede/sr2
•
Plugins (para Eclipse) JBoss Tools 3.0.2 GA para Java EE 5:
obtener JBossTools-ALL-win32-3.0.2.v200909151014R-H192-GA.zip del sitio:
http://www.jboss.org/tools/download/stable/3_0_GA.html
•
Servidor JBoss 5.1.0 GA
obtener jboss-5.1.0.GA.zip en http://sourceforge.net/projects/jboss/files/JBoss/JBoss5.1.0.GA/
•
Framework Seam 2.2.0 con generadores y ejemplos:
obtener jboss-seam-2.2.0.GA.zip en http://seamframework.org/Download
ADICIONAL
•
Plugins adicionales para Eclipse:
SVN: para trabajar con un repositorio Subversion desde Eclipse: se seguirán
instrucciones de http://subclipse.tigris.org/servlets/ProjectProcess?pageID=p4wYuA
pg. 3
Curso: Desarrollo de aplicaciones en
Java EE 5 en base a frameworks
TestNG: para realizar pruebas unitarias y funcionales con TestNG: obtener testngeclipse-5.9.0.4.zip en http://testng.org/doc/download.html (usar enlace denominado
“download the TestNG Eclipse plug-in directly”)
•
Framework Taylor:
la versión Taylor MDA 1.2.0 requiere:
• Maven (administrador de librerías): obtener apache-maven-2.0.9-bin.zip en
http://maven.apache.org/download.html
•
•
3
software Taylor MDA 1.2.0: obtenerlo en el sitio
http://sourceforge.net/project/showfiles.php?group_id=144396
o
taylor-mda-core-1.2.0.zip : contiene los editores UML
o
taylor-mda-JEE-1.2.0.zip : contiene plantillas y generadores de código
Motor de base de datos PostgreSQL:
Bajar la versión estable 8.2.14 de postgreSQL de la siguiente página (archivo
postgresql-8.2.14-1.zip) : http://www.postgresql.org/ftp/binary/
Instalar el JDK 1.6
Ejecutar (con doble-click) el instalador de JDK 1.6 en la versión que se disponga.
4
Instalar Eclipse IDE for Java EE Developers
Esta versión de IDE facilita el desarrollo de proyectos en Java EE, con vistas (Windows)
especializadas en:
•
•
•
•
•
•
Explorar bases de datos (Data Source Explorer)
Navegador Internet interno (Internal Web Browser)
Empacar aplicaciones: war, jar, ejb jar, ear (Project archives)
Lanzar tareas Ant (Ant)
Desarrollo JPA con entidades persistentes (JPA details, JPA Structure)
Lanzar servidores registrados dentro del ambiente Eclipse (Servers)
Para la instalación seguir los siguientes pasos:
•
Descomprimir el archivo eclipse-jee-ganymede-SR2-win32.zip (corresponde a la
versión 3.4.2) en el directorio de instalación escogido, por ejemplo c:\eclipsejee-3.4.2
(no debe haber espacios en la ruta de ese directorio).
•
Crear ícono de acceso directo al archivo eclipse.exe y lanzar el programa, indicando un
nuevo directorio como workspace, por ejemplo c:\ws-eclipsejee-3.4.2 (no debe haber
espacios en la ruta de ese directorio).
pg. 4
Curso: Desarrollo de aplicaciones en
Java EE 5 en base a frameworks
•
En Windows >> Preferences >> Java >> InstalledJREs verificar que está señalado el
JDK con el cual va a trabajar Eclipse (debe ser un JDK y no un JRE para poder compilar)
•
Establecer para los archivos fuentes que los TABs deben reemplazarse por espacios:
En Windows >> Preferences >> General >> Editors >> Text Editors :
• escoger “Insert spaces for tabs”
• salir con los botones Apply y OK
En Preferences >> Java >> Code style >> Formatter: usar botón Edit
• en la pestaña Indentation escoger Tab Policy: Spaces only
• dar un nombre al Profile (por ejemplo “MyProfile”) y salir con los botones Apply
y OK
En Preferences >> Web >> HTML files >> Editor:
• escoger "Indent using spaces"
• escoger Indentation size = 2
• usar botón Apply
En Preferences >> XML >> XML files >> Editor:
• escoger "Indent using spaces"
• escoger Indentation size = 2
• usar botón Apply
5
Instalar plugins JBoss Tools para Java EE 5
El conjunto de plugins JBoss Tools All para Eclipse ofrece facilidades adicionales para el
desarrollo de aplicaciones Java EE 5, agregando las perspectivas de Web Development y
Seam con vistas (windows) especializadas en:
•
•
•
•
•
•
Explorador de proyectos JSF (vista Web Projects)
Paleta para diseñar páginas JSF (vista JBoss Tools Palette con elementos HTML,
Facelets, Ajax4jsf, RichFaces, Seam; se puede extender con otros elementos como ADF,
ICEfaces, etc.)
Herramientas Hibernate que permiten ejecutar consultas JPQL (vistas Hibernate
Configurations, Query Parameters, Hibernate Query Result, Hibernate Dynamic SQL
Preview)
Asociar proyectos a servidores registrados en Eclipse (vista JBoss Server View)
Diseño de procesos de negocio jBPM (vista Overview, editor jBPM Graphical Process
Designer)
Lista de componentes Seam de un proyecto, indicando el contexto de cada componente
(vista Seam Components, solo funciona para proyectos generados con el asistente
“Seam Web Project”)
pg. 5
Curso: Desarrollo de aplicaciones en
Java EE 5 en base a frameworks
Antes de instalar este conjunto de plugins debe cerrarse Eclipse y agregar al principio del
archivo eclipse.ini (bajo el directorio de instalación de Eclipse) la opción -clean
Con esta
opción Eclipse refrescará sus plugins instalados cada vez que se inicie.
Para la instalación descomprimir el archivo
JBossTools-ALL-win32-3.0.2.v200909151014R-H192-GA.zip
en el directorio raíz de la instalación de Eclipse.
Luego se puede invocar Eclipse y abrir las perspectivas agregadas (Web Development y
Seam)
6
Instalar plugins adicionales para Eclipse
6.1
PLUGIN SUBVERSION
Permite interactuar con un repositorio de versiones Subversion.
Para instalar la última versión del plugin deben seguirse las instrucciones de
http://subclipse.tigris.org/servlets/ProjectProcess?pageID=p4wYuA
Después de la instalación (que incluye reiniciar Eclipse) abrir la perspectiva SVN la cual
permitirá definir y conectarse a repositorios Subversion.
En algunos casos debe instalarse una versión previa del plugin de Subversion para que
pueda comunicarse con una versión específica del manejador de versiones. Este es el caso
del manejador Subversion 1.4 que es instalado por el ambiente colaborativo GForge 5.x En
esta situación se recomienda seguir las siguientes instrucciones para instalar el plugin 1.4:
•
•
•
•
•
•
•
En Eclipse entrar por la opción de menú Software updates y situarse en la pestaña
Available Software
Usar el botón Add site e indicar como Location:
http://subclipse.tigris.org/update_1.4.x
Seleccionar todos los elementos propuestos y solicitar la instalación mediante el botón
Install
Reiniciar Eclipse
Abrir la perspectiva SVN
Definir el acceso a un repositorio Subversion (con click-derecho solicitar New >>
Repository Location):
o Indicar
URL
(por
ej:
http://myserver.com.co/svn/myrepository)
y
usuario/password
o Para mayor comodidad en los siguientes accesos seleccionar la opción de
guardar el password
Sobre el tronco del repositorio definido hacer checkout creando un nuevo proyecto en
Eclipse.
pg. 6
Curso: Desarrollo de aplicaciones en
Java EE 5 en base a frameworks
6.2
PLUGIN TESTNG
Permite realizar pruebas unitarias y funcionales. El framework Seam genera para los
archivos fuentes Java este tipo de tests.
Para instalarlo, cerrar Eclipse y descomprimir el archivo testng-eclipse-5.9.0.4.zip en el
directorio raíz de la instalación de Eclipse.
7
Instalar el Servidor JBoss
Este servidor se instala para las pruebas locales de las aplicaciones desarrolladas con los
frameworks Seam y Taylor. Posteriormente se podrían instalar otros servidores como OC4J,
WebLogic y Websphere pues el framework Seam soporta estos y otros servidores.
7.1
INSTALACIÓN BÁSICA
Para instalar el servidor JBoss, descomprimir el archivo jboss-5.1.0.GA.zip
Lanzar el servidor mediante el comando run.bat ubicado en subdirectorio bin relativo al
directorio de instalación de JBoss.
Bajar el servidor mediante el comando shutdown -S
7.2
CAMBIAR OPCIONALMENTE EL PUERTO 8080
Si se tienen conflictos por el uso de puertos se pueden cambiar estos puertos en el archivo
server.xml localizado en el subdirectorio
jboss-5.1.0.GA\server\default\deploy\jbossweb.sar
Se recomienda hacer una copia de la versión original de este archivo server.xml.
Por ejemplo el puerto 8080 es utilizado tanto por el servidor JBoss como por el motor de
base de datos Oracle Express. Si se pretende usar los dos al tiempo, se puede cambiar JBoss
para que use por ejemplo el puerto 8090 (bajar el servidor para hacer este cambio).
Para verificar que JBoss esta funcionando correctamente, al lanzarlo el url
http://localhost:8090/ debe mostrar las opciones de la consola (muestra memoria utilizada,
aplicaciones publicadas, etc.). Algunas opciones de la consola exigen autenticación: utilizar
las credenciales iniciales de usuario: admin y contraseña: admin
NOTA: Si se llegara a trabajar simultáneamente con 2 servidores JBoss (por ejemplo el 4.2.3 y el 5.x)
entonces se tendrán que diferenciar los puertos definidos tanto en server.xml como en los siguientes
descriptores:
• bindings-jboss-beans.xml localizado en server/default/conf/bindingservice.beans/META-INF
• ejb3-connectors-jboss-beans.xml localizado en server/default/deploy
pg. 7
Curso: Desarrollo de aplicaciones en
Java EE 5 en base a frameworks
•
•
7.3
jboss-service.xml localizado en server/default/deploy/http-invoker.sar/META-INF
jboss-service.xml localizado en server/default/deploy/http-invoker.sar/META-INF
CONFIGURACIÓN ADICIONAL DEL SERVIDOR JBOSS
•
Bajar el servidor JBoss
•
Colocar drivers JDBC de los motores de bases de datos que se vayan a utilizar bajo el
directorio de instalación de JBoss en server/default/lib/ (se incluye un subdirectorio
DriversJDBC con drivers JDBC para 9 motores de bases de datos).
•
Configurar el log4j: colocar el archivo jboss-log4j.xml (localizado junto a esta guía)
bajo el directorio de instalación de JBoss en server/default/conf/
•
Configuración para poder invocar web services publicados en el servidor
JBossAS5.0.0GA trabajando con JDK1.6.0_11 (de acuerdo a los Release Notes en
http://sourceforge.net/project/shownotes.php?release_id=645033):
Copiar las siguientes librerías del subdirectorio jboss-5.1.0.GA\client hacia jboss5.1.0.GA\ lib\endorsed
jbossws-native-saaj.jar
jbossws-native-jaxrpc.jar
jbossws-native-jaxws.jar
jbossws-native-jaxws-ext.jar
•
Habilitar protocolo seguro https:
obtener un certificado digital para el servidor: bajo el subdirectorio SSL-JBoss se
incluyen comandos que utilizan la herramienta keytool para generar un certificado
digital (subdirectorio SSL-JBoss/comandos-keytool/); como resultado de los comandos
se obtienen 3 archivos correspondientes al certificado digital (que se han incluido bajo
el subdirectorio SSL-JBoss/resultado-comandos/), estos archivos deben renovarse cada
3 meses cuando caduca el certificado.
colocar los archivos del certificado digital bajo el directorio de instalación de JBoss en
server/default/conf/
editar el archivo server.xml localizado en server/default/deploy/jbossweb.sar/ :
• descomentariar la sección referente al “SSL/TLS Conector configuration”
indicando el archivo que representa la bodega de firmas y el password para
acceder a esta bodega; correspondiente a los archivos del certificado digital, la
sección queda como sigue:
pg. 8
Curso: Desarrollo de aplicaciones en
Java EE 5 en base a frameworks
<!-- SSL/TLS Connector configuration using the admin devl
guide keystore -->
<Connector protocol="HTTP/1.1" SSLEnabled="true"
port="8443" address="${jboss.bind.address}"
scheme="https" secure="true" clientAuth="false"
keystoreFile="${jboss.server.home.dir}/conf/keystore.jks"
keystorePass="passtambora" sslProtocol = "TLS" />
subir el servidor JBoss y probar el protocolo https en el url https://localhost:8443/:
después de aceptar el certificado debe mostrar la consola de JBoss
•
Habilitar para poder explorar un directorio web de aplicación:
Para habilitar la opción de explorar los directorios y subdirectorios web colocados en
JBoss se debe editar el archivo web.xml bajo
server/deploy/deployers/jbossweb.deployer colocando el atributo "listings" en
true (inicialmente viene en false):
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
7.4
INSCRIBIR EL SERVIDOR JBOSS EN ECLIPSE
•
Bajar el servidor JBoss
•
Lanzar Eclipse
•
Bajo la perspectiva Java EE abrir la vista (window) Server >> JBoss Server View:
con click-derecho usar opción New >> Server
seleccionar como tipo de servidor: JBoss AS 5.1 y usar el botón Next
indicar directorio de instalación de JBoss, seleccionar el JRE (indicando un JDK1.6.x),
seleccionar la configuración “default” y usar el botón Next y luego el botón Finish.
•
Si se desea que el servidor JBoss atienda clientes remotos y no solo locales:
en la vista JBoss Server View con click-derecho sobre el elemento correspondiente a
JBoss 5.1, usar la opción Open
cambiar el “Host name” incialmente en localhost por 0.0.0.0
salvar la configuración
•
Subir y bajar el servidor JBoss desde la vista JBoss Server View
pg. 9
Curso: Desarrollo de aplicaciones en
Java EE 5 en base a frameworks
8
Instalar el framework Seam
El framework Seam vuelve transparente la comunicación entre capas, mediante la utilización
de web beans. El beneficio que se obtiene es un código más simple, más conciso y más fácil
de mantener.
El framework viene acompañado de abundantes ejemplos y de generadores de código para
el desarrollo de aplicaciones Java EE 5.
Para la instalación:
• descomprimir jboss-seam-2.2.0.GA.zip en el directorio workspace de Eclipse
•
inscribir como nuevo proyecto Eclipse de tipo Java Project al subdirectorio resultante
jboss-seam-2.2.0.GA (seleccionar “create new Project in the workspace”).
•
editar el archivo build.properties bajo el subdirectorio jboss-seam-2.2.0.GA,
agregando la propiedad que indica la localización del servidor JBoss, ej:
jboss.home =C:/jboss-5.1.0.GA
Probar uno de los ejemplos del framework Seam (ejemplo booking):
• subir el servidor JBoss desde Eclipse
• abrir la vista de Ant e inscribir el archivo build.xml localizado en
jboss-seam-2.2.0.GA/examples/booking/
• para publicar el ejemplo en el servidor invocar las tareas ant: clean y deploy
• invocar el ejemplo en http://localhost:8090/seam-booking/ (suponiendo que JBoss
está utilizando el puerto 8090; el nombre del contexto web se puede averiguar en el
descriptor application.xml)
• publicar otros ejemplos de la misma manera
NOTA: los ejemplos del framework Seam utilizan el motor de base de datos Hypersonic. Se
puede invocar un cliente para este motor Hypersonic en el siguiente url (suponiendo el
puerto 8090):
http://localhost:8090/jmxconsole/HtmlAdaptor?action=inspectMBean&name=jboss%3Aservice%3DHypersonic%2Cd
atabase%3DlocalDB
Oprimir el botón correspondiente a startDatabaseManager()
9
Instalar el framework Taylor
El framework Taylor permite hacer modelos UML de entidades persistentes y generar las
clases Java correspondientes (incluyendo anotaciones). También permite hacer modelos UML
de EJB 3 de sesión y generar las clases Java correspondientes.
pg. 10
Curso: Desarrollo de aplicaciones en
Java EE 5 en base a frameworks
Las clases Java de entidades y EJBs podrán posteriormente agregarse a un proyecto Java EE
5. Sobre este proyecto podrá aplicarse el framework Seam para generar otros elementos de
las distintas capas.
NOTA: el framework Taylor también ofrece generadores de elementos de las distintas capas
de una aplicación Java EE 5. Sin embargo, la estructuración de archivos fuentes es muy
diferente a la que se obtiene utilizando Seam. Entre los 2 frameworks se prefiere Seam que
es soportado por RedHat y una comunidad más amplia que la de Taylor. Es por eso que se
recomienda utilizar el framework Taylor solo para el modelaje de entidades y EJBs (este
modelaje todavía no es ofrecido por el framework Seam).
Para la instalación del framework Taylor deben seguirse las instrucciones del sitio
http://taylor.sourceforge.net/index.php/Installation . Esta instalación se resume en los
siguientes pasos:
•
Previamente tener instalado Eclipse 3.4.x (siguiendo las secciones anteriores se supone
que en este punto ya se tiene instalado)
•
Instalación de Maven: descomprimir el archivo apache-maven-2.0.9-bin.zip
conformando el subdirectorio apache-maven-2.0.9 y luego añadir las siguientes
variables de ambiente:
M2_HOME = <ruta del directorio apache-maven-2.0.9>
M2 = %M2_HOME%\bin
MAVEN_OPTS = -Xms256m -Xmx512m
actualizar variable PATH añadiendo al principio %M2%;
verificar la instalación de Maven con el siguiente comando: $ mvn --version
•
Instalación de los plugins de Taylor MDA 1.2.0: cerrar Eclipse y descomprimir en el
directorio de instalación de Eclipse los archivos taylor-mda-core-1.2.0.zip y taylormda-JEE-1.2.0.zip
•
Lanzar Eclipse y abrir la perspectiva Taylor: aparecerá en esta perspectiva la vista
Model Navigator que posteriormente se utilizará para modelar entidades y EJBs
10
Instalación y configuración del motor de base de datos
PostgreSQL
El motor de base de datos PostgreSQL es softwware libre y muy robusto. En su versión para
Windows se recomienda para crear bases de datos locales para pruebas de los ejemplos de
Java EE 5 (aunque se puede instalar cualquier otro motor de base de datos como MySQL,
Oracle Express, etc.).
Para la instalación de PostgreSQL:
• descomprimir postgresql-8.2.14-1.zip en un directorio temporal
pg. 11
Curso: Desarrollo de aplicaciones en
Java EE 5 en base a frameworks
•
cerrar las aplicaciones activas (bajar JBoss y cerrar Eclipse)
•
ejecutar con doble-click el instalador postgresql-8.2.msi : seleccionar la opción de dejar
información de la instalación en un log; dejar las opciones por defecto (se puede elegir
dejar el motor como un servicio del sistema); como credenciales del administrador
indicar usuario: postgres y contraseña: postgres (no aceptar una contraseña aleatoria)
NOTA: en algunos sistemas el instalador de Postgresql puede solicitar activar algunos
servicios como el “Secondary Logon” ; si esto sucede no se debe cancelar la instalación
de Postgresql (porque puede quedar información a medias sobre Postgresql) sino más
bien activar los servicios y proseguir con la instalación
Para crear una base de datos PostgresSQL:
•
Si PostgreSQL no se instaló como servicio del sistema, subir el motor mediante la
aplicación PostgreSQL >> start service
•
Invocar el cliente del motor mediante la aplicación PostgreSQL >> pgAdmin III
•
Abrir conexion con PostgreSQL del localhost con las credenciales que se usaron durante
la instalación (por defecto son usuario: postgres contraseña: postgres).
•
Ubicarse en la base de datos denominada postgres y abrir el editor SQL para ejecutar el
siguiente script:
CREATE USER usuario LOGIN
NOSUPERUSER INHERIT CREATEDB NOCREATEROLE
ENCRYPTED PASSWORD 'contraseña'
;
CREATE DATABASE nombre
WITH OWNER = usuario
ENCODING = 'UTF8'
;
Se acostumbra utilizar la misma palabra para nombrar la base de datos (nombre) y
para el usuario dueño de la misma.
•
Mediante la opción del menú File >> Add Server añadir una conexión directa con la
nueva base de datos con las credenciales del usuario dueño.
pg. 12