Foros del Web » Programación para mayores de 30 ;) » Java »

Conectar hibernate con postgreSQL

Estas en el tema de Conectar hibernate con postgreSQL en el foro de Java en Foros del Web. Buenas tardes, estoy intentando conectar Hibernate desde Eclipse con PostgreSQL. Para ello cree un DataSource en TOMCAT llamado GestAbogado.xml. Pero no hay manera de hacerlo ...
  #1 (permalink)  
Antiguo 16/07/2008, 12:58
 
Fecha de Ingreso: julio-2002
Ubicación: Córdoba
Mensajes: 54
Antigüedad: 21 años, 9 meses
Puntos: 0
Conectar hibernate con postgreSQL

Buenas tardes,

estoy intentando conectar Hibernate desde Eclipse con PostgreSQL. Para ello cree un DataSource en TOMCAT llamado GestAbogado.xml. Pero no hay manera de hacerlo funcionar. Pondré aquí el código por si alguien me puede dar una solución.

Gracias. Tal vez necesitéis más datos.

<Context path="/GestAbogado" docBase="GestAbogado" debug="5" reloadable="true" crossContext="true"><Resource

name="jdbc/GestAbogado" auth="Container" type="javax.sql.DataSource" driverClassName="org.postgresql.Driver"

url="jdbc:postgresql://localhost:5432/gestAbogado" username="postgres" password="postgres" maxActive="20"

maxIdle="10" maxWait="-1"/></Context>
  #2 (permalink)  
Antiguo 16/07/2008, 13:49
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Conectar hibernate con postgreSQL

Hola,

Si quieres utilizar hibernate para conectarte a una base de datos, no tienes que crear ningun datasource en TOMCAT, Hibernate tiene sus propios archivos,

Para configurar Hibernate debes de crear un archivo hibernate.cfg.xml y dentro de este van todos los parametros para la conexion

saludos!
  #3 (permalink)  
Antiguo 16/07/2008, 14:37
 
Fecha de Ingreso: julio-2002
Ubicación: Córdoba
Mensajes: 54
Antigüedad: 21 años, 9 meses
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

Cita:
Iniciado por Bunburyscom Ver Mensaje
Hola,

Si quieres utilizar hibernate para conectarte a una base de datos, no tienes que crear ningun datasource en TOMCAT, Hibernate tiene sus propios archivos,

Para configurar Hibernate debes de crear un archivo hibernate.cfg.xml y dentro de este van todos los parametros para la conexion

saludos!
En primer lugar gracias por contestar.

Tengo creado un fichero que se llama hibernate.cfg.xml, y dentro de él tengo el siguiente código:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.datasource">java:comp/env/jdbc/GestAbogado</property>
<property name="dialect">
org.hibernate.dialect.PostgreSQLDialect
</property>
<property name="transaction.factory_class">
org.hibernate.transaction.JDBCTransactionFactory
</property>

<!-- Mapping files -->
<property name="jndi.url"></property>
<mapping resource="com/gestAbogado/modelo/cliente.hbm.xml" />

</session-factory>
</hibernate-configuration>

Ahí se define el datasource que hablaba en el anterior post.


Saludos.
  #4 (permalink)  
Antiguo 16/07/2008, 14:50
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Conectar hibernate con postgreSQL

Ok, esta bien, pero no te enojes

Y tambien ya tienes la clase que Hibernate necesita para abrir la conexion?
  #5 (permalink)  
Antiguo 16/07/2008, 14:57
 
Fecha de Ingreso: julio-2002
Ubicación: Córdoba
Mensajes: 54
Antigüedad: 21 años, 9 meses
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

Cita:
Iniciado por Bunburyscom Ver Mensaje
Ok, esta bien, pero no te enojes

Y tambien ya tienes la clase que Hibernate necesita para abrir la conexion?
No hombre, como me iba a enojar, jejejeje.

Creo que te refieres a esto:

public List getClientes(String login, String nombre, String organismo) throws DAOException
{
Session sesion = null;
Transaction tx = null;
List resultado = null;

try
{
sesion = factory.openSession();
tx = sesion.beginTransaction();

//
String consulta = " from CLIENTES";

/*if(login!=null && !login.equals(""))
{
consulta+=" and u.login like '%"+login+"%'";
}

if(nombre!=null && !nombre.equals(""))
{
consulta+=" and u.nombreCompleto like '%"+nombre+"%'";
}
consulta+=" order by u.nombreCompleto";
*/Query query = sesion.createQuery(consulta);
resultado = query.list();
tx.commit();
}
catch (Exception e)
{
if (tx != null)
{
try
{
tx.rollback();
}
catch (HibernateException e1)
{
throw new DAOException(e1.toString());
}
}

throw new DAOException(e.toString());

}
finally
{
if (sesion != null)
{
try
{
//sesion.close();
}
catch (HibernateException e)
{
// ?
}
}
}

return resultado;
}




Al hacer : tx = sesion.beginTransaction();

Es donde salta el error
  #6 (permalink)  
Antiguo 16/07/2008, 15:01
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Conectar hibernate con postgreSQL

jejej.. bueno

Supongo que factory es tu clase.

Que error te marca cuando le das beginTransaction(); ??
  #7 (permalink)  
Antiguo 16/07/2008, 15:09
 
Fecha de Ingreso: julio-2002
Ubicación: Córdoba
Mensajes: 54
Antigüedad: 21 años, 9 meses
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

Cita:
Iniciado por Bunburyscom Ver Mensaje
jejej.. bueno

Supongo que factory es tu clase.

Que error te marca cuando le das beginTransaction(); ??

Me da ese error:

org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
  #8 (permalink)  
Antiguo 16/07/2008, 15:15
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Conectar hibernate con postgreSQL

Lo que pasa es que al archivo hibernate.cfg.xml le hace falta la propiedad

<property name="connection.url"></property>
  #9 (permalink)  
Antiguo 16/07/2008, 15:46
 
Fecha de Ingreso: julio-2002
Ubicación: Córdoba
Mensajes: 54
Antigüedad: 21 años, 9 meses
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

Cita:
Iniciado por Bunburyscom Ver Mensaje
Lo que pasa es que al archivo hibernate.cfg.xml le hace falta la propiedad

<property name="connection.url"></property>
He puesto lo que me has dicho pero me sigue dando error :(. Tengo que poner la linea tal cual, ¿verdad?
  #10 (permalink)  
Antiguo 16/07/2008, 15:48
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Conectar hibernate con postgreSQL

Tienes que poner esa linea con el valor url de la conexion

<property name="connection.url">jdbc:postgresql://localhost:5432/gestAbogado</property>
  #11 (permalink)  
Antiguo 16/07/2008, 15:50
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Conectar hibernate con postgreSQL

Perdon, se me paso debe de ir asi:

<property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/gestAbogado</property>

En todas las propiedades ponle el nombre de hibernate
  #12 (permalink)  
Antiguo 17/07/2008, 03:50
 
Fecha de Ingreso: julio-2002
Ubicación: Córdoba
Mensajes: 54
Antigüedad: 21 años, 9 meses
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

Cita:
Iniciado por Bunburyscom Ver Mensaje
Perdon, se me paso debe de ir asi:

<property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/gestAbogado</property>

En todas las propiedades ponle el nombre de hibernate
Gracias por contestar. Ayer ya no pude entrar en la página, me daba error. Puse lo último que me dijistes, pero me sigue dando error :(
  #13 (permalink)  
Antiguo 17/07/2008, 08:24
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Conectar hibernate con postgreSQL

Haber prueba con esto:

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
<session-factory>

<property name="connection.driver_class">org.postgresql.Driv er</property>
<property name="connection.url">jdbc:postgresql://localhost:5432/gestAbogado</property>
<property name="connection.username">postgres</property>
<property name="connection.password">postgres</property>

<property name="dialect">org.hibernate.dialect.PostgreSQLDia lect
</property>

<mapping resource="com/gestAbogado/modelo/cliente.hbm.xml"/>

</session-factory>
</hibernate-configuration>

saludos!!
  #14 (permalink)  
Antiguo 17/07/2008, 09:14
 
Fecha de Ingreso: julio-2002
Ubicación: Córdoba
Mensajes: 54
Antigüedad: 21 años, 9 meses
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

Cita:
Iniciado por Bunburyscom Ver Mensaje
Haber prueba con esto:

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
<session-factory>

<property name="connection.driver_class">org.postgresql.Driv er</property>
<property name="connection.url">jdbc:postgresql://localhost:5432/gestAbogado</property>
<property name="connection.username">postgres</property>
<property name="connection.password">postgres</property>

<property name="dialect">org.hibernate.dialect.PostgreSQLDia lect
</property>

<mapping resource="com/gestAbogado/modelo/cliente.hbm.xml"/>

</session-factory>
</hibernate-configuration>

saludos!!
Nada, que no hay forma. Estoy por dejarlo por imposible :(
  #15 (permalink)  
Antiguo 17/07/2008, 09:19
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Conectar hibernate con postgreSQL

Pero que te marca, el mismo error??
  #16 (permalink)  
Antiguo 17/07/2008, 09:43
 
Fecha de Ingreso: julio-2002
Ubicación: Córdoba
Mensajes: 54
Antigüedad: 21 años, 9 meses
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

Cita:
Iniciado por Bunburyscom Ver Mensaje
Pero que te marca, el mismo error??
Ese es el error que me da desde siempre:



e= GenericJDBCException (id=1768)
cause (NestableRuntimeException)= SQLNestedException (id=1770)
cause (Throwable)= SQLNestedException (id=1770)
Pending...
cause (SQLNestedException)= SQLException (id=1774)
cause= SQLException (id=1774)
detailMessage= "No suitable driver"
next= null
SQLState= "08001"
stackTrace= StackTraceElement[43] (id=1782)
vendorCode= 0
detailMessage= "Cannot create JDBC driver of class '' for connect URL 'null'"
count= 60
hash= 0
offset= 0
value= char[60] (id=1787)
next= null
SQLState= null
stackTrace= null
vendorCode= 0
cause (Throwable)= GenericJDBCException (id=1768)
cause (NestableRuntimeException)= SQLNestedException (id=1770)
cause (Throwable)= SQLNestedException (id=1770)
cause (Throwable)= SQLNestedException (id=1770)
delegate= NestableDelegate (id=1771)
detailMessage= "Cannot open connection"
sql= "???"
sqle= SQLNestedException (id=1770)
stackTrace= null
  #17 (permalink)  
Antiguo 17/07/2008, 09:51
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Conectar hibernate con postgreSQL

Tienes el hibernate.cfg.xml en la carpeta /WEB-INF/classes/ ?

Otra cosa, tienes las librerias del postgreSQL en tu aplicacion??
estas deberian de ir en la carpeta /WEB-INF/lib/

saludos!
  #18 (permalink)  
Antiguo 17/07/2008, 10:08
 
Fecha de Ingreso: julio-2002
Ubicación: Córdoba
Mensajes: 54
Antigüedad: 21 años, 9 meses
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

Cita:
Iniciado por Bunburyscom Ver Mensaje
Tienes el hibernate.cfg.xml en la carpeta /WEB-INF/classes/ ?

Otra cosa, tienes las librerias del postgreSQL en tu aplicacion??
estas deberian de ir en la carpeta /WEB-INF/lib/

saludos!
Si, tengo las dos cosas. Creo que te estoy mareando demasiado, pero es que no se como solucionarlo.
  #19 (permalink)  
Antiguo 17/07/2008, 10:29
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Conectar hibernate con postgreSQL

jejejje... no me mareas, asi aprendemos todos

Haber pasame tu hibernate.cfg.cml y tu clase de sesiones de Hibernate para probarlo aca.
  #20 (permalink)  
Antiguo 17/07/2008, 10:43
 
Fecha de Ingreso: julio-2002
Ubicación: Córdoba
Mensajes: 54
Antigüedad: 21 años, 9 meses
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

Cita:
Iniciado por Bunburyscom Ver Mensaje
jejejje... no me mareas, asi aprendemos todos

Haber pasame tu hibernate.cfg.cml y tu clase de sesiones de Hibernate para probarlo aca.
No se si te refieres a esto.

Si quieres que te pase algo más.......Es que por aquí no me deja más de 10000 mil caracteres. Si puedo mandarla por correo.......


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.datasource">java:comp/env/jdbc/GestAbogado</property>
<property name="hibernate.dialect">
org.hibernate.dialect.PostgreSQLDialect
</property>
<property name="hibernate.transaction.factory_class">
org.hibernate.transaction.JDBCTransactionFactory
</property>
<property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/gestAbogado</property>



<property name="connection.driver_class">org.postgresql.Driv er</property>
<property name="connection.url">jdbc:postgresql://localhost:5432/gestAbogado</property>
<property name="connection.username">postgres</property>
<property name="connection.password">postgres</property>

<property name="dialect">org.hibernate.dialect.PostgreSQLDia lect
</property>



<!-- Mapping files -->
<property name="hibernate.jndi.url"></property>
<mapping resource="com/gestAbogado/modelo/cliente.hbm.xml" />

</session-factory>
</hibernate-configuration>
  #21 (permalink)  
Antiguo 17/07/2008, 10:48
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Conectar hibernate con postgreSQL

Voy a checar este archivo.

Ya te mande un msg privado.
  #22 (permalink)  
Antiguo 22/04/2009, 20:53
 
Fecha de Ingreso: mayo-2008
Mensajes: 10
Antigüedad: 16 años
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

Si lo solucionas porfavor hazlo saber!

Gracias.
  #23 (permalink)  
Antiguo 28/04/2009, 11:03
 
Fecha de Ingreso: julio-2002
Ubicación: Córdoba
Mensajes: 54
Antigüedad: 21 años, 9 meses
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

Pues en realidad no he conseguido realizar la conexión entre hibernate y postgreSql.

Si alguien puede ayudarme.......

Cita:
Iniciado por Jvircof Ver Mensaje
Si lo solucionas porfavor hazlo saber!

Gracias.
  #24 (permalink)  
Antiguo 10/06/2009, 09:17
 
Fecha de Ingreso: junio-2009
Mensajes: 1
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

hola yo tengo puesto esto


<hibernate-configuration>
<session-factory>

<property name="hibernate.dialect">org.hibernate.dialect.Pos tgreSQLDialect</property>
<property name="hibernate.connection.driver_class">org.postg resql.Driver</property>
<property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/ejemplo</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.connection.username">nombre</property>
<property name="hibernate.connection.password">pass</property>
<mapping resource="PersonaBean.hbm.xml"/>

</session-factory>

</hibernate-configuration>

espero haber ayudado a alguien
  #25 (permalink)  
Antiguo 27/08/2009, 00:35
 
Fecha de Ingreso: agosto-2009
Mensajes: 1
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Conectar hibernate con postgreSQL

Hola viendo el mensaje de error dice "detailMessage= "No suitable driver""
incluiste el .jar del driver correspondiente a tu dbms.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:55.