lunes, 19 de abril de 2010

JBOSS SEAM en 5 minutos

Para este ejemplo estoy utilizando JDK1.6, Eclipse Galileo y Ubuntu 9.10
Requerimientos Adicionales:
JBoss(para mi caso estoy usando la version:jboss-4.2.3.GA)
JBossSeam(para mi caso estoy usando la version:jboss-seam-2.1.1.GA)


Utilizando el siguiente diagrama de la base de datos, vamos a crear un aplicativo usando JBoss Seam.


Generamos el respectivo script que este caso corresponde a:

CREATE DATABASE IF NOT EXISTS producto;
USE producto;

CREATE TABLE Categoria (
idCategoria INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
nombre VARCHAR(20) NOT NULL,
PRIMARY KEY(idCategoria)
);

CREATE TABLE Producto (
idProducto INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
Categoria_idCategoria INTEGER UNSIGNED NOT NULL,
nombre VARCHAR(20) NOT NULL,
descripcion VARCHAR(255) NOT NULL,
fechaExpiracion DATE NULL,
PRIMARY KEY(idProducto),
INDEX Producto_FKIndex1(Categoria_idCategoria),
FOREIGN KEY(Categoria_idCategoria)
REFERENCES Categoria(idCategoria)
ON DELETE CASCADE
ON UPDATE NO ACTION
);

Como primer paso debemos generar el respectivo aplicativo usando el asistente de JBossSeam. Para mi caso, descomprimí JBossSeam en /opt/jboss-seam-2.1.1.GA

dentro de ese directorio, se debe ejecutar el siguiente comando
"./seam setup"


En ese momento se nos mostrarán una serie de preguntas de configuración de nuestra futura aplicación:

=================================================
Enter your Java project workspace (the directory that contains your Seam projects):
/home/santiago/seamProjects

Enter your JBoss AS home directory:
/home/santiago/jboss-4.2.3.GA
Enter the project name:
FirstOne
Do you want to use ICEfaces instead of RichFaces:
n
Select a RichFaces skin:
blueSky
Is this project deployed as an EAR (with EJB components) or a WAR (with no EJB support):
ear
Enter the Java package name for your session beans:
com.xtream.session
Enter the Java package name for your entity beans:
com.xtreme.persistence
Enter the Java package name for your test cases:
com.xtreme.test
What kind of database are you using?:
mysql
Enter the Hibernate dialect for your database:
org.hibernate.dialect.MySQLDialect
Enter the filesystem path to the JDBC driver jar:
/home/santiago/jdbc/mysql-connector.jar
Enter JDBC driver class for your database:
org.gjt.mm.mysql.Driver
Enter the JDBC URL for your database:
jdbc:mysql://localhost:3306/producto
Enter database username:
root
Enter database password:
****
Enter the database catalog name (it is OK to leave this blank):
producto
Are you working with tables that already exist in the database?:
y
Do you want to drop and recreate the database tables and data in import.sql each time you deploy?:
n

=================================================
Una vez contestadas estas preguntas, tenemos que crear el proyecto, para esto utilizamos el comando "./seam create-project"

Hecho esto creamos el proyecto.
El próximo paso es generar la persistencia del aplicativo:
para esto usamos el comando "./seam generate-entities"

y finalmente para hacer deployment del proyecto usamos el comando "./seam explode"

Si levantamos nuestra instancia de JBoss y entramos a:
http://localhost:8080/FirstOne/home.seam

Veremos nuestra aplicación.
El nombre de usuario y clave por default son:admin/admin




Además, tambien se nos generan los proyectos de Eclipse y de Netbeans.

No hay comentarios:

Publicar un comentario