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

consulat sobre el log4j.properties

Estas en el tema de consulat sobre el log4j.properties en el foro de Java en Foros del Web. hola amigos, les traigo una duda peculiar. estoy programando con eclipse, hibernate y mysql. en mi APP quise probar administrar el archivo log con la ...
  #1 (permalink)  
Antiguo 28/05/2014, 16:38
 
Fecha de Ingreso: octubre-2010
Mensajes: 154
Antigüedad: 14 años, 1 mes
Puntos: 5
consulat sobre el log4j.properties

hola amigos, les traigo una duda peculiar.
estoy programando con eclipse, hibernate y mysql.
en mi APP quise probar administrar el archivo log con la libreria LOG4J, y sin tener muchos resultados, decidi no seguir usandola.
Pero resulta que ahora si saco el archivo "log4j.properties", me devuelve error, y no solo eso, al restaruar el archivo, la app funciona pero super lento. El cliente me quiere tirar a la M....

les muestro el mensaje de advertencia que me muestra al quitar el archivo log4j.properties:
Código Java:
Ver original
  1. log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
  2. log4j:WARN Please initialize the log4j system properly.

Otra aclaración, es que me sale eso cuando intento acceder a la base utilizando hibernate por primera vez, el resto de las veces no lo hace. Y en veces que no accede a datos de la base no lo muestra.

Hay algun tips para quitar esa advertencia, para que no joda mas??
saludos.
  #2 (permalink)  
Antiguo 28/05/2014, 21:36
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: consulat sobre el log4j.properties

Hibernate usa alguna librería de log, puede ser log4j u otras.

En concreto, hibernate usa la librería slf4j-api.jar que es una especie de "puente" entre una aplicación (hibernate en este caso) y una librería de log (por ejemplo, log4j). Para que slf4j sepa qué librería de log usar, debes añadir una librería más (por ejemplo) slf4j-log4j.jar). Si ese slf4j-log4j.jar existe, estás diciendo que quieres usar log4j. A partri de aquí, debes tener tu jar de log4j y configurar log4j (fichero log4j.properties), ya que hibernate usará log4j.

Si quieres eliminar log4j, elimina aparte del jar log4j.jar y el log.properties, también slf4j-log4j.jar, pero entonces hibernate protestará porque no hay librería de log. Tendrás que poner una.

Si no quieres buscar otra librería de log, deja todo lo de log4j y o bien configuras bien el log4j.properties, o bien eliminas ese fichero pero en tu main pones algo como BasicConfigurator.configure() donde BasicConfigurator es una clase que está en log4j.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 29/05/2014, 14:52
 
Fecha de Ingreso: octubre-2010
Mensajes: 154
Antigüedad: 14 años, 1 mes
Puntos: 5
Respuesta: consulat sobre el log4j.properties

buenas tardes chuidiang, como decis, tengo las librerias:
log4j.jar
slf4j-api-1.5.8.jar
slf4j-log4j12.jar.
y el archivo log4j.properties

probe eliminar lo que me dijiste, pero empeoraron los errores.

ahora podria ser mi archivo de configuracion de hibernate??
hibernate.cfg.xml

es el que paso a continuacion:

Código XML:
Ver original
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
  3.                                         "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
  4. <hibernate-configuration>
  5.  <session-factory name="SessionFactoryTaller">
  6.   <property name="hibernate.bytecode.use_reflection_optimizer">false</property>
  7.   <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
  8.   <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/dbXXXX</property>
  9.   <property name="hibernate.connection.username">root</property>
  10.   <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
  11.   <property name="hibernate.search.autoregister_listeners">false</property>
  12.   <property name="hibernate.connection.pool_size">10</property>
  13.   <property name="hibernate.current_session_context_class">thread</property>
  14.   <property name="hibernate.connection.password"/>
  15.   <property name="hibernate.show_sql">true</property>
  16.   <mapping class="Hibernate.Presupuesto" resource="Hibernate/Presupuesto.hbm.xml"/>
  17.   <mapping class="Hibernate.Vehiculo" resource="Hibernate/Vehiculo.hbm.xml"/>
  18.   <mapping class="Hibernate.Cliente" resource="Hibernate/Cliente.hbm.xml"/>
  19.   <mapping class="Hibernate.Pagos" resource="Hibernate/Pagos.hbm.xml"/>
  20.   <mapping class="Hibernate.Dueno" resource="Hibernate/Dueno.hbm.xml"/>
  21.  </session-factory>
  22. </hibernate-configuration>

y noto que la demora la hace cuando al correr la APP e hibernate (lo que va saliendo por consola es lo siguiente)

Código Java:
Ver original
  1. 17:44:28,924  INFO Version:15 - Hibernate Annotations 3.4.0.GA
  2. 17:44:28,984  INFO Environment:560 - Hibernate 3.3.2.GA
  3. 17:44:28,990  INFO Environment:593 - hibernate.properties not found
  4. 17:44:29,001  INFO Environment:771 - Bytecode provider name : javassist
  5. 17:44:29,021  INFO Environment:652 - using JDK 1.4 java.sql.Timestamp handling
  6. 17:44:29,203  INFO Version:14 - Hibernate Commons Annotations 3.1.0.GA
  7. 17:44:29,210  INFO Configuration:1474 - configuring from resource: /hibernate.cfg.xml
  8. 17:44:29,211  INFO Configuration:1451 - Configuration resource: /hibernate.cfg.xml
  9. 17:44:31,930  INFO Configuration:600 - Reading mappings from resource : Hibernate/Presupuesto.hbm.xml
  10. 17:44:34,629  INFO Configuration:600 - Reading mappings from resource : Hibernate/Vehiculo.hbm.xml
  11. 17:44:36,516  INFO Configuration:600 - Reading mappings from resource : Hibernate/Cliente.hbm.xml
  12. 17:44:38,217  INFO Configuration:600 - Reading mappings from resource : Hibernate/Pagos.hbm.xml
  13. 17:44:39,657  INFO Configuration:600 - Reading mappings from resource : Hibernate/Dueno.hbm.xml
  14. 17:44:41,102  INFO Configuration:1589 - Configured SessionFactory: SessionFactoryTaller

lo que se indica desde las lineas de la 9 a la 13, es cuando la APP se pone lenta o demora en levantar los datos que necesito.
realmente ya tengo quemado el bocho, no tengo ni idea como quitar esta porqueria que me trajo mas problemas que soluciones.

si se les ocurre otra cosa, me avisan y posteo el codigo.

abrazo.

Etiquetas: programa
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 13:50.