viernes, 22 de septiembre de 2017

Creando un proyecto #Java con #OpenXava 5.7.1 y #MySQL

openxava_001Hace algún tiempo había comentado acerca del Framework para desarrollo rápido de aplicaciones web empresariales OpenXava. Realmente no he notado mucha evolución desde entonces hasta la versión actual (5.7.1); sin embargo, retomaré el tema con un ejercicio que nos lleve más allá de esos primeros pasos.

Concretamente, vamos a crear un nuevo proyecto OpenXava con la base de datos MySQL.

Para comenzar, asumiremos que ya cuentan con la plataforma adecuadamente configurada, y que ya han logrado ejecutar apropiadamente la aplicación de ejemplo MySchool.

openxava2_001

Creando el Proyecto Java

Como tampoco es la idea aburrirlos repitiendo lo que tienen en la documentación oficial disponible en: http://ob.tener.me/2hpWRrQ, daremos por sentado que ya conocen los pasos para crear su proyecto.

Básicamente solo tienen que:

  • Crear un proyecto Java en su Eclipse IDE
  • Ejecutar el script Ant “Crear nuevo proyecto OpenXava” e indicar el nombre del proyecto Java creado previamente.

openxava2_005

Colocando el Driver de MySQL

OpenXava trae de manera predeterminada el driver de HSQLDB. Si deseamos hacer uso de otra base de datos, como en nuestro caso MySQL, tendremos que incorporar el driver correspondiente a nuestro proyecto.

Como External Jar

Para ello, de las propiedades del proyecto elegimos configurar las “Libraries” en el “Java Build Path”, y pulsamos el botón [Add External JARs…]

Desde la ventana emergente localizamos la ruta donde tengamos ubicado el driver mysql-connector-java, y seleccionamos el jar.

openxava2_010b

Sin embargo, quizás nos convenga más integrar efectivamente el Driver de MySQL en el Framework.

Integrando el Driver de MySQL en OpenXava

Para integrar el Driver de MySQL en OpenXava, debemos como primer paso, colocar el jar en la carpeta “lib” del proyecto “OpenXava”.

openxava2_011

Luego, en nuestro Eclipse IDE, vamos al proyecto “OpenXava” y luego de hacer “Refresh”, podremos ubicar el jar del Driver de MySQL en la carpeta “lib”.

Hacemos click derecho sobre el jar y del menú contextual seleccionamos “Build Path > Add to Build Path”, con lo cual ya podremos verlo en las “Referenced Libraries”.

Debemos recordar construir todo para poder referirlo entonces en nuestro proyecto.

Para ello, el proceso es similar al descrito anteriormente, solo que en lugar de seleccionar [Add External JARs…] ahora podremos seleccionar [Add JARs…] ya que la librería se encuentra integrada en nuestro proyecto OpenXava.

Nótese en la imagen la diferencia entre ambos métodos

openxava2_013

IMPORTANTE: Si elige realizar la integración no olvide remover la dependencia hacia el JAR externo.

Ajustando el archivo build.xml

Luego de configurar nuestro Driver, tendremos que ajustar nuestro archivo build.xml para que cargue el driver al momento de realizar la construcción.

openxava2_017

NOTA: Por algún motivo, a pesar de que se ajuste el archivo build, la aplicación desplegada no logra encontrar el Driver de MySQL. De manera que, para resolver el despliegue, colocamos el driver directamente en el directorio “lib” del Apache Tomcat.

Configurando Hibernate

OpenXava hace uso del framework de persistencia Hibernate para abstraernos del manejo de esta capa.

Para cambiar de base de datos, tendremos que realizar en nuestro proyecto el ajuste de los archivos de configuración: hibernte.cfg.xml y persistence.xml.

Configurando hibernate.cfg.xml

En el archivo hibernate.cfg.xml debemos cambiar la definición del “hibernate.dialect” para indicar el correspondiente a MySQL

<property name=”hibernate.dialect”>org.hibernate.dialect.MySQLDialect</property>

openxava2_014

Configurando persistence.xml

De manera similar, hemos de ajustar la definición en el archivo persistence.xml

openxava2_015

Aunque en este caso, tendremos que ajustar también la configuración del JUnit.

openxava2_016

 

Configurando el Apache Tomcat

Otro paso que deberán realizar es configurar el Apache Tomcat de la distribución en su Eclipse IDE.

Ciertamente podrían elegir configurar un servidor diferente al entregado en la distribución del framework; sin embargo, por lo pronto solo trabajaremos con el de la distribución.

Aquí vale la pena recordar que…

  • Debemos tener en nuestro equipo, apropiadamente configurada las variables de entorno del sistema JAVA_HOME y CATALINA_HOME.
  • Previo a la configuración de nuestro servidor tenemos que haber configurado nuestro Eclipse IDE para que utilice nuestro JDK como el JRE predeterminado.
  • Al señalar la ruta del directorio de instalación de Tomcat debemos hacerlo hasta la raíz (es decir, sin el directorio “bin”)
Haga click para ver el pase de diapositivas.

Al final de estos pasos, nuestro workspace debería verse así:

openxava2_002

Configurando el DataSource

Del proyecto “Servers”, editaremos el archivo “context.xml” para incorporar la definición de nuestro DataSource.

<Resource name=”jdbc/{mi-nombre-de-datasource}” auth=”Container” type=”javax.sql.DataSource”

maxActive=”20″ maxIdle=”5″ maxWait=”10000″

username=”{mi-usuario}” password=”{mi-password}” driverClassName=”com.mysql.jdbc.Driver”

url=”jdbc:http://mysqllocalhost:3306/{mi-esquema-de-base-de-datos}”/>

Donde habremos de colocar los valores correspondientes para nuestra base de datos.

IMPORTANTE:
{mi-nombre-de-datasource} corresponde al nombre de {mi-proyecto}DS
Si deseamos utilizar otro nombre tendremos que cambiar la configuración de nuestro archivo “hibernate.cfg.xml”

Creando la Clase

Con base a la estructura de nuestra base de datos

CREATE TABLE `scian` (
`ID_SCIAN` int(11) NOT NULL AUTO_INCREMENT,
`COD_SCIAN` varchar(11) NOT NULL,
`SCIAN_ES` varchar(250) NOT NULL,
`SCIAN_EN` varchar(250) NOT NULL,
PRIMARY KEY (`ID_SCIAN`),
UNIQUE KEY `COD_SCIAN_UNIQUE` (`COD_SCIAN`)
) ENGINE=InnoDB AUTO_INCREMENT=2091 DEFAULT CHARSET=utf8 COMMENT=’ID_SCIAN: Identificador autoincremental, COD_SCIAN: Codigo SCIAN, SCIAN_ES: Definicion SCIAN Español, SCIAN_EN: Definicion SCIAN Ingles’;

 

Crearemos nuestra clase y anotaremos conforme a las definiciones de identificador, tipo de dato, longitud y requerimiento.

openxava2_019

 

Despliegue de la aplicación

Construimos todo pulsando el botón [Build All].

Agregamos nuestro proyecto al servidor Apache Tomcat y lo iniciamos.

openxava2_007

Y listo, podremos abrir nuestro browser y ver nuestro sitio

http://localhost:8080/mi-proyecto

openxava2_008

Y ver como la magia está hecha

openxava2_018

 

Espero te haya sido útil este post.

………….

Quiero man.tener.me informado: Seguir en Twitter  @eldavid_oficial https://twitter.com/eldavid_oficial

Regálame un ME GUSTA. Y si eres solidario, COMPARTE para que otros puedan aprovecharlo.

 

 


Archivado en: Eclipse, Hibernate, IDE, Informática e Internet, Java, MySQL, OpenSource, Piensa diferente Tagged: Eclipse, Hibernate, IDE, Java, MySQL, OpenSource

No hay comentarios.:

Publicar un comentario

Nota: sólo los miembros de este blog pueden publicar comentarios.