Blog Developando » openxava http://developando.com/blog ¿Tienes una idea? Nosotros te ayudamos Sat, 06 Sep 2014 08:39:54 +0000 es-ES hourly 1 http://wordpress.org/?v=3.8.4 Configurar OpenXava y MySQL http://developando.com/blog/configurar-openxava-mysql http://developando.com/blog/configurar-openxava-mysql#comments Thu, 10 Apr 2014 14:43:56 +0000 http://developando.com/blog/?p=2358 En este tutorial vamos a explicar cómo configurar un proyecto OpenXava para que utilice una base de datos MySQL. Partimos de un proyecto OpenXava creado desde cero. Por tanto para realizar este tutorial deberás primero haberte creado el proyecto. Comencemos con las modificaciones que hay que realizar. En la siguiente imagen mostramos como es la […]

The post Configurar OpenXava y MySQL appeared first on Blog Developando.

]]>
En este tutorial vamos a explicar cómo configurar un proyecto OpenXava para que utilice una base de datos MySQL. Partimos de un proyecto OpenXava creado desde cero. Por tanto para realizar este tutorial deberás primero haberte creado el proyecto.

Comencemos con las modificaciones que hay que realizar. En la siguiente imagen mostramos como es la estructura de archivos y carpetas de un proyecto OpenXava básico:

Estructura proyecto OpenXava

Estructura proyecto OpenXava

Configurar MySql y OpenXava

Debemos modificar los siguientes ficheros dentro de nuestro proyecto para poder trabajar con MySQL:

  • Configuración Tomcat ‘context.xml
  • Fichero ant ‘build.xml
  • Fichero de persistencia ‘META-INF/persistence.xml
  • Fichero ‘hibernate.cfg.xml

Creación Base de datos

Lo primero que debemos hacer es crear una nueva base de datos. Para ello accederemos a la consola de MySQL y ejecutaremos lo siguiente:

  1. create database developando;

En este ejemplo vamos a trabajar con los siguientes datos para la base de datos MySQL:

  • Base de datos: developando
  • Usuario: admin
  • Contraseña: admin

Descargar el conector de MySQL

El siguiente paso será descargar el conector de la base de datos MySQL, en este tutorial utilizaremos ‘mysql-connector-java-5.0.8-bin.jar‘,  y copiarlo en la carpeta ‘~/tomcat/lib/‘.

Configurar el fichero context.xml de Tomcat

Editar el fichero ‘~/tomcat/conf/context.xml‘ con el siguiente contenido:

  1. <Resource name="jdbc/developandoDS" auth="Container" type="javax.sql.DataSource"
  2. maxActive="100" maxIdle="4" maxWait="10000"
  3. username="admin" password="admin" driverClassName="com.mysql.jdbc.Driver"
  4. url="jdbc:mysql://localhost:3306/developando" />

Deberemos rellenar el nombre de usuario y la contraseña del usuario de MySQL que se conectará a la base de datos. En este ejemplo hemos creado este nuevo recurso con el nombre ‘jdbc/developandoDS‘, y este será el nombre que utilizaremos en el resto de ficheros de configuración para referenciarlo.

Configurar ficheros del proyecto

Fichero build.xml

Cambiar la tarea que realiza la actualización del esquema para que utilice el conector de mysql. Para ello modificar el fichero “~/build.xml“, cambiando la tarea ‘UpdateSchema‘ por la siguiente:

  1. <target name="updateSchema">
  2. <ant antfile="../OpenXava/build.xml" target="updateSchemaJPA">
  3. <property name="persistence.unit" value="junit"/>
  4. <property name="schema.path"
  5.            value="../../tomcat/lib/mysql-connector-java-5.0.8-bin.jar"/>
  6. </ant>
  7. </target>

Fichero persistence.xml

Dentro de la carpeta ‘persistence‘ del proyecto editar el fichero ‘META-INF/persistence.xml‘ añadiendo las siguientes líneas para modificar la persistencia por defecto:

  1. <persistence-unit name="default">
  2.      <provider>org.hibernate.ejb.HibernatePersistence</provider>
  3.      <non-jta-data-source>java:comp/env/jdbc/developandoDS</non-jta-data-source>
  4.      <class>org.openxava.session.GalleryImage</class>
  5.         <properties>
  6.             <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
  7.         </properties>
  8.     </persistence-unit>    

Y estas otras para modificar la persistencia de ‘junit‘:

  1. <persistence-unit name="junit">
  2.      <provider>org.hibernate.ejb.HibernatePersistence</provider>
  3.         <properties>
  4. <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
  5. <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
  6. <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/developando"/>
  7. <property name="hibernate.connection.username" value="admin"/>
  8. <property name="hibernate.connection.password" value="admin"/>
  9.         </properties>
  10.     </persistence-unit>    

Fichero hibernate.cfg.xml

En este fichero deberemos modificar ‘hibernate.dialect‘ para que utilice ‘MySQLDialect‘, quedando el fichero de la siguiente manera:

  1. <hibernate-configuration>
  2.  
  3. <session-factory>
  4.  
  5. <!-- Tomcat + MySQL -->
  6. <property name="hibernate.connection.datasource">java:comp/env/jdbc/developandoDS</property>
  7. <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
  8. <property name="hibernate.jdbc.use_get_generated_keys">false</property>
  9. <property name="hibernate.show_sql">false</property>
  10.  
  11. <mapping resource="GalleryImage.hbm.xml"/>
  12.  
  13. </session-factory>
  14.  
  15. </hibernate-configuration>

Una vez realizados todos estos cambios en los ficheros de nuestro proyecto, ya podremos lanzar la tarea que se encarga de actualizar el esquema de la base de datos MySQL que hemos configurado.

Para ellos ejecutar la tarea ‘UpdateSchema‘ del fichero ‘build.xml‘, y si  todo está bien configurado deberemos ver una salida por consola como la siguiente:

Proyecto OpenXava crear esquema MySQL

Proyecto OpenXava crear esquema MySQL

Las líneas que están recuadradas en rojo muestran las tablas que han sido creadas al actualizar el esquema de la base de datos MySQL.

Espero que el tutorial sea de ayuda. Si tenéis alguna queja, duda o sugerencia no dudéis en utilizar los comentarios.

The post Configurar OpenXava y MySQL appeared first on Blog Developando.

]]>
http://developando.com/blog/configurar-openxava-mysql/feed 0

Last updated by at .