Icefaces, JBoss, Maven2 y EJB3: Parte 1

0
22875

Icefaces, JBoss, Maven2 y
EJB3: Parte 1.

Voy a realizar una serie de
tutoriales encadenados, que pretenden obtener un arquetipo de
proyecto con las siguientes características:

  • IDE: Eclipse 3.1.1

  • Ciclo de vida del proyecto:
    Maven2. (usaré el plugin m2eclipse para gestionar maven2 y
    eclipse)

  • Parte de la Vista /
    Controlador: usaré JSF RI (incluida en JBoss) y icefaces

  • Parte del Modelo: EJB 3.0

  • Servidor de aplicaciones:
    JBoss 4.2.2

  • Base de datos: MySQL

En esta primera parte, nuestro
objetivo será crear la estructura de proyectos en eclipse,
crear los ficheros pom.xml de cada uno de ellos con las dependencias
para empezar a trabajar.

  1. Creando estructura de
    proyecto en eclipse:

    Existen
    ya algunos tutoriales de Alejandro Pérez explicando como
    llevar a cabo esta tarea para que Eclipse y Maven2 puedan superar
    sus diferencias:

    http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=mavenRelease

    Básicamente,
    lo que vamos a hacer:

  • Crearemos
    un proyecto de propósito general y lo denominaremos ‘Padre’.

  • Crearemos
    un proyecto EJB y lo denominaremos ‘Modelo’

  • Crearemos
    un proyecto web dinámico (Dynamic Web Project) y lo
    denominaremos ‘Web’

  • Borraremos
    los proyectos ‘Modelo’ y ‘Web’ (¡OJO!, NO borraremos
    su contenido.)

  • Usando
    el explorador de archivos de tu Sistema Operativo favorito,
    moveremos ambos proyectos (‘Web’ y ‘Modelo’) dentro de
    ‘Padre’

  • Importaremos
    los proyectos ‘Web’ y ‘Modelo’ desde Eclipse: File –
    Import:


Nos
habrá quedado una estructura como muestra la imagen:


  1. Creando los ficheros
    pom.xml

    Empezaremos
    por el proyecto Padre, que será el que englobe a todos los
    módulos. En la raíz del proyecto, crearemos un fichero
    pom.xml:



4.0.0
com.autentia.tutoriales.icefaces
Padre
1.0-SNAPSHOT
pom
Padre

Este proyecto es el padre de todas los módulos.
Mantiene configuraciones comunes.


Web
Modelo



java-net
java-net
http://download.java.net/maven/2


java.net
http://download.java.net/maven/1
legacy


jboss
http://repository.jboss.com/maven2/





junit
junit
3.8.1
test


log4j
log4j
1.2.14
provided


commons-logging
commons-logging
1.1



A
continuación, crearemos el del proyecto Modelo:


4.0.0

com.autentia.tutoriales.icefaces
Padre
1.0-SNAPSHOT

com.autentia.tutoriales.icefaces
Modelo
1.0-SNAPSHOT
ejb
Modelo

Módulo encargado del modelo de negocio y de la persistencia de la aplicación.
Desarrollado con EJB 3.0.




maven-ejb-plugin

3.0


true








javax.persistence
persistence-api
1.0
provided


javax.transaction
jta
1.0.1B
provided


javax.activation
activation
1.1
compile


javax.ejb
ejb-api
3.0
provided


jboss
jboss-ejb-api
4.2.0.GA
provided



Por
último, crearemos el pom.xml para la parte Web:


4.0.0

com.autentia.tutoriales.icefaces
Padre
1.0-SNAPSHOT

com.autentia.tutoriales.icefaces
Web
1.0-SNAPSHOT
war
Web

Módulo encargado de la vista y el control. JSF RI e Icefaces




javax.servlet
servlet-api
2.5
provided


javax.servlet.jsp
jsp-api
2.1
provided


javax.servlet
jstl
1.1.2


taglibs
standard
1.1.2


javax.el
el-api
1.0
provided



javax.faces
jsf-api
1.2_04-p01
provided


javax.faces
jsf-impl
1.2_04-p01
provided



org.icefaces
icefaces
1.6.1


org.icefaces
icefaces-comps
1.6.1


org.icefaces
icefaces-facelets
1.6.1


backport-util-concurrent
backport-util-concurrent
3.1



  1. Usar el plugin
    m2Eclipse para gestionar los proyectos.

    Configuraremos
    los tres proyectos para que sean gestionados por el plugin
    m2Eclipse: Si no lo tenéis, está explicado en:
    http://m2eclipse.codehaus.org/


    Con
    esto acabamos la primera parte. En el próximo tutorial,
    configuraremos correctamente la parte del módulo Web para
    realizar un primer ejemplo.

DEJA UNA RESPUESTA

Por favor ingrese su comentario!

He leído y acepto la política de privacidad

Por favor ingrese su nombre aquí

Información básica acerca de la protección de datos

  • Responsable:
  • Finalidad:
  • Legitimación:
  • Destinatarios:
  • Derechos:
  • Más información: Puedes ampliar información acerca de la protección de datos en el siguiente enlace:política de privacidad