| |||
Configuracion de JPA EclipseLink Hola, necesito que por favor me ayuden, desarrollé un programa con persistencia EclipseLink y me crea el archivo persistence.xml, el cual a mas de tener registrada las clases entidades que utilizo, también registra los datos de conexion como la url, usuario y contraseña del servidor de base de datos. El problema es que este archivo persistence.xml se queda dentro del archivo.jar que genero, y esto hace que no sea dinamico el cambiarle los parametros de conexion, la aplicacion es de escritorio(swing) y quisiera saber si existe una forma de obtener estos parametros de conexion de alguna otra manera para no tener que generar un jar diferente cada vez que quiera cambiar los valores de los mismos. |
| ||||
Respuesta: Configuracion de JPA EclipseLink no se puede, persistence.xml DEBE ser compilado e includo en META-INF. Lo que podés hacer es crear diferentes Persistence Unit y switchear cuando creás el EntityManagerFactory (si estás usando injection desde algún application server ya no sabría guiarte).
Código Java:
Ver original
Código XML:
Ver original Nota: realmente no se si existe una mejor práctica para esto, nunca me interesé en buscar otra alternativa, si la encontrás, estaría bueno que la publiques Bue.. 10 minutos después de investigación Una alternativa para @override algunas propiedades del persistence.xml justamente usando un Map de properties
Código Java:
Ver original
__________________ BadProgrammerException! Última edición por FiruzzZ; 05/01/2012 a las 05:08 Razón: post topic research! |
| |||
Respuesta: Configuracion de JPA EclipseLink Gracias FiruzzZ, justo eso es lo que estaba buscando, al final pude hacer algo como esto:
Código Java:
Ver original Ya con esto puedo crear un archivo propiedades y con esto hacer que la configuracion se pueda realizar dinamicamente. Muchas gracias por tu ayuda!! |
| |||
Respuesta: Configuracion de JPA EclipseLink viejo te agradezco publiques como realmente hicistes que el jta-data-source jdbc/default te funcionara estoy en las misma que estuvistes. mi correo es [email protected] |
| |||
Respuesta: Configuracion de JPA EclipseLink Que tal Joseprox, te indico los pasos que realizé en mi aplicación Swing con JPA, lo hice en Netbeans: 1. En la pestaña de Servicios, Databases, drivers, cree una nueva conexion usando Mysql (click derecho -- conecting ussing..). 2. Una vez creada la conexion, en mi proyecto, click derecho, new -> persistent unit, ahi escoges la conexion que acabas de crear en la pestaña de servicios. 3. Una vez creada la unidad de persistencia, se crea el archivo persistence.xml con los parametros de conexión, y cada vez que crees una clase entidad se va a agregar la referencia de esa clase en este archivo persistence.xml. Al final mi archivo persistence.xml quedó de la siguiente manera:
Código XML:
Ver original 4. Con esto ya puedes utilizar tu aplicación con JPA, invocando la unidad de persistencia desde tu codigo java:
Código Java:
Ver original 5. De aquí viene la parte para hacer que la conexión sea dinámica, primero cuando inicio la aplicacion, levanto una ventana que me pide los datos de conexion a la base, y estos datos los guardo en un archivo llamado conexion.conf.
Código Java:
Ver original 6. Una vez que ya tenga el archivo creado, inicio mi aplicacion leyendo el archivo conexion.conf, utilizando sus datos para crear el EntityManagerFactory.
Código Java:
Ver original 7. Con eso ya tienes como hacer que la conexion sea dinamica, obviamente la ventana que guarda los datos de conexion en el archivo conexion.conf, solo se va a ejecutar la primera vez que se inicie la aplicacion que estas desarrollando, o cuando los parámetros que estén guardados sean incorrectos, estas validaciones tenlas presentes al desarrollar tu aplicación, aquí solo te expliqué lo que se necesita para que la conexión sea dinámica. Espero haberte ayudado, si tienes dudas por favor me comunicas. |
Etiquetas: |