Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с регистрацией событий Hibernate в log4j, Проблема с регистрацией событий Hibernat 
V
    Опции темы
mbasil
Дата 20.2.2010, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 399
Регистрация: 4.5.2007
Где: Москва

Репутация: 2
Всего: 13



В результате экспериментов с Hibernate в обычном приложении столкнулся с проблемой: не хочет он писать в файл. 
Упорно пишет на консоль, хотя конфигурацию загружаю явно. Журнальный файл hibernet.log создается, но остается пустым.
Конфигурация загружается, так как аналогичная конфигурация журнала внутри приложения работает отменно.

Код

log4j.appender.fileHB=org.apache.log4j.RollingFileAppender
log4j.appender.fileHB.File=E:/W_Hb/log/hibernet.log
log4j.appender.fileHB.MaxFileSize=5000KB
log4j.appender.fileHB.MaxBackupIndex=1
log4j.appender.fileHB.layout=org.apache.log4j.PatternLayout
log4j.appender.fileHB.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

log4j.logger.org.hibernate=info, fileHB
log4j.logger.org.hibernate.type=info, fileHB
log4j.logger.org.hibernate.tool.hbm2ddl=debug, fileHB

Перепробовал все, что мог, посему и обращаюсь к Вам за помощью. Что упустил?
Файлы библиотек на месте:
Код

log4j-1.2.13.jar
slf4j-api-1.5.10.jar
slf4j-log4j12-1.5.10
slf4j-simple-1.5.10.jar

PM MAIL   Вверх
jk1
Дата 20.2.2010, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1168
Регистрация: 17.10.2008
Где: Санкт-Петербург

Репутация: 40
Всего: 75



Отключите slf4j-simple-1.5.10.jar


--------------------
Opinions are like assholes — everybody has one
PM MAIL   Вверх
mbasil
Дата 20.2.2010, 17:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 399
Регистрация: 4.5.2007
Где: Москва

Репутация: 2
Всего: 13



Пробовал, результат выбрасывание исключения
Код

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Initial SessionFactory creation failed.java.lang.NoClassDefFoundError: org/slf4j/impl/StaticLoggerBinder
Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerError

и Hibernate не срабатывает
PM MAIL   Вверх
MaxPayneC
Дата 20.2.2010, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 324
Регистрация: 18.2.2006

Репутация: 5
Всего: 9



Попробуйте убрать slf4j-api-1.5.10.jar
PM   Вверх
mbasil
Дата 20.2.2010, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 399
Регистрация: 4.5.2007
Где: Москва

Репутация: 2
Всего: 13



Уже пробовал убирать все файлы slf4j оптом и в розницу. В результате только выбрасывание исключения.
PM MAIL   Вверх
MaxPayneC
Дата 20.2.2010, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 324
Регистрация: 18.2.2006

Репутация: 5
Всего: 9



Не знаю почему не работает... вот мои зависимости проекта:
Код

        <!--Log4j-->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.15</version>
            <exclusions>
                <exclusion>
                    <groupId>com.sun.jdmk</groupId>
                    <artifactId>jmxtools</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>com.sun.jmx</groupId>
                    <artifactId>jmxri</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>javax.mail</groupId>
                    <artifactId>mail</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>javax.jms</groupId>
                    <artifactId>jms</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <!--Hibernate-->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate</artifactId>
            <version>3.2.7.ga</version>
            <exclusions>
                <exclusion>
                    <groupId>asm</groupId>
                    <artifactId>asm</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>asm</groupId>
                    <artifactId>asm-attrs</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>cglib</groupId>
                    <artifactId>cglib</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>javax.transaction</groupId>
                    <artifactId>jta</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <!--Cglib для hibernate, та что указана в зависимостях, глючит-->
        <dependency>
            <groupId>cglib</groupId>
            <artifactId>cglib</artifactId>
            <version>2.2</version>
        </dependency>

        <!--Поддержка аннотаций хибернейтом-->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-annotations</artifactId>
            <version>3.4.0.GA</version>
        </dependency>

        <!--Пул соединений хибернейта-->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-c3p0</artifactId>
            <version>3.3.2.GA</version>
        </dependency>

        <!--Поддержка логирования хибернейта в log4j-->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.4.3</version>
        </dependency>

И log4j.xml:
Код

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

    <appender name="console" class="org.apache.log4j.ConsoleAppender">
        <param name="Target" value="System.err"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d %p %c: %m%n"/>
        </layout>
    </appender>

    <logger name="dbms">
        <level value="info"/>
        <appender-ref ref="console"/>
    </logger>

    <logger name="org.hibernate">
        <level value="info" />
        <appender-ref ref="console" />
    </logger>

    <logger name="com.mchange">
        <level value="info" />
        <appender-ref ref="console" />
    </logger>

    <logger name="org.apache">
        <level value="info" />
        <appender-ref ref="console" />
    </logger>

    <logger name="com.opensymphony">
        <level value="info" />
        <appender-ref ref="console" />
    </logger>

    <logger name="freemarker">
        <level value="info" />
        <appender-ref ref="console" />
    </logger>
</log4j:configuration>

Может быть, как-то поможет вам.
PM   Вверх
jk1
Дата 20.2.2010, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1168
Регистрация: 17.10.2008
Где: Санкт-Петербург

Репутация: 40
Всего: 75



Авторы SLF утверждают, что для логгирования с вашим конфигом необходимо иметь slf4j-api-1.5.10.jar и slf4j-log4j12-1.5.10. Библиотека slf4j-simple-1.5.10.jar представляет собой не более чем затычку при отсутствии других средств логгирования. Раз её удаление не пашет, попробуйте распаковать slf4j-log4j12-1.5.10 и найти там требуемый класс. Если не найдете - скачайте нормальную версию библиотеки, там этот класс есть. Если найдете - проблема, видимо, в том, что slf4j-log4j12-1.5.10 не попадает в CLASSPATH. Этот факт можно проверить обращениями к классам библиотеки из вашего кода.



--------------------
Opinions are like assholes — everybody has one
PM MAIL   Вверх
mbasil
Дата 20.2.2010, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 399
Регистрация: 4.5.2007
Где: Москва

Репутация: 2
Всего: 13



jk1

Спасибо ! 
В точку: две ошибки наложились. Надо было удалить slf4j-simple-1.5.10.jar и правильно включить log4j12-1.5.10.jar
При включении вручную в classpath потерял одну букву в названии файла: написал "log4j12-1.5.10.ja"
Здорово вы меня "раскололи", туп оказался не по годам.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0476 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.