Está en la página 1de 3

FLISOL 2010 - Taller de OPENXAVA Alejandro Enrique More Montoya

OPENXAVA

DEFINICIÓN

Es un framework orientado a componentes de negocio de código abierto para desarrollar


aplicaciones JavaEE de forma rápida y efectiva sin implementar la complejidad de otros
frameworks usados para java como MVC, Struts, JSF, etc. Los cuales definen la lógica de
negocio (modelo), interfaz de usuario (vista) y comportamiento (controlador) por separado, lo
cual permite que la aplicación se adapte a cambios de lógica de negocio, de motor de base de
datos, interfaz de usuario; pero es perjudicial cuando se trata de cambiar la estructura de los
datos como por ejemplo: agregar nuevos campos, ya que esto implica hacer modificaciones en
todos los niveles.

En OpenXava se define (Clases Java – Componentes de Negocio) en lugar de programar y el


framework provee automáticamente la interfaz de usuario, el acceso a los datos, validaciones,
etc. La definición de clases se hace usando POJO (Plain Old Java Object) y notación JPA (Java
Persistence API), esto trabaja junto con el framework para producir una aplicación en
funcionamiento.

ARCHIVOS NECESARIOS

1. Eclipse

http://eclipse.c3sl.ufpr.br/technology/epp/downloads/release/galileo/SR2/eclipse-jee-galileo-SR2-win32.zip

2. Framework OpenXava

http://downloads.sourceforge.net/project/openxava/openxava/4m3/openxava-4m3.zip?use_mirror=ufpr

Este archivo incluye el código de OpenXava, ejemplos, la guía de referencia, tutoriales y un


servidor tomcat.

3. Java JDK

EJEMPLO POR DEFECTO

Vamos a correr el ejemplo MiEscuela y en base a este vamos a hacer algunas modificaciones.
FLISOL 2010 - Taller de OPENXAVA Alejandro Enrique More Montoya

1. Configuración de JDK

Debemos asegurarnos tener instalado el java jdk en nuestra computadora, para el


taller usaremos el OpenJDK 1.6 sobre Ubuntu 9.04

De ser necesario vamos a establecer un valor a la variable JAVA_HOME

Export JRE_HOME=/usr/lib/jvm/[java versión]

2. Levantamos el servidor tomcat que viene en el openxava

Nos colocamos en la carpeta openxava/tomcat/bin

./startup.sh

3. Ejecutamos el Eclipse

Como workspace por defecto seleccionamos la carpeta workspace que se encuentra


dentro del openxava.

4. Construimos el proyecto MiEscuela, le damos click derecho al proyecto y


ejecutamos la tarea ant desplegarWar, vamos a la dirección y listo:

http://localhost:8080/MiEscuela/xava/module.jsp?application=MiEscuela&module=Profesor

NOTACIONES AVANZADAS

Ahora vamos a añadirle a nuestro mantenimiento de Profesor más funcionalidades como una
imagen, pestañas de selección de campos, algunos componentes de formularios clásicos como:
combos, checklist, etc.

Llave primaria de profesor


@Id
@Hidden
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(length=6)
private int idProfesor;

Propiedades de campos
@Required
@Column (length=30, columnDefinition="VARCHAR(30) NOT NULL/SMALLINT(6)")
@Stereotype ("TELEFONO/EMAIL")
@DefaultValueCalculator(CurrentYearCalculator.class)

Añadiendo una foto al profesor


@Column(columnDefinition="BLOB")
@Stereotype("PHOTO")
private byte[] foto;

Estados del profesor


public enum EstProfesor {
Activo, Jubilado
}
@Column (length=1)
private EstProfesor estadoProfesor;
FLISOL 2010 - Taller de OPENXAVA Alejandro Enrique More Montoya

Personalización de presentación
@Entity
@Tab(properties="apeProfesor, nomProfesor")
@View(
members=
"Información Básica {nomProfesor, apeProfesor; sexoProfesor, estadoProfesor} " +
"Información Adicional {direcProfesor; telefProfesor; emailProfesor; fotoProfesor} " +
"Cursos {programaciones}"
)

En el archivo i18n/EtiquetasColegio_es.properties dentro del proyecto


#Class: Profesor
Profesor.module[description]= Mantenimiento de Profesores
Profesor.apeAlumno=Apellidos
Profesor.nomAlumno=Nombres
Profesor.sexoAlumno=Sexo
Profesor.fotoAlumno=Foto

Configuración de la BD para crear un proyecto nuevo

Modificar el archivo build.xml del proyecto


<target name="actualizarEsquema">
<ant antfile="../OpenXava/build.xml" target="updateSchemaJPA">
<property name="persistence.unit" value="junit"/>
<property name="schema.path" value="../OpenXavaTest/lib/hsqldb.jar"/
<property name="schema.path" value="../../tomcat/common/lib/mysql-connector-java-
5.1.6-bin.jar"/>
</ant>
</target>

Modificar el archivo context.conf dentro de conf

<Resource name="jdbc/Colegio" auth="Container" type="javax.sql.DataSource"


maxActive="20" maxIdle="5" maxWait="10000"
username="sa" password="" driverClassName="org.hsqldb.jdbcDriver"
url="jdbc:hsqldb:hsql://localhost:1666"/>

Arrancar la bd con el comando

./start-hsqldb.sh colegio-db 1666

También podría gustarte