Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Hibernate Search в har


Автор: megaproger 24.12.2007, 03:20
Привет всем!
У меня такая проблема:
Необходимо использовать Hibernate Search. 
Когда я пытаюсь проиндексировать объект следующим образом :
 
Код

      FullTextSession fullTextSession = Search.createFullTextSession(session);
      Transaction tx = fullTextSession.beginTransaction();
      list = session.createQuery("from Category as category").list();
      for(int i=0;i<list.size();i++) {
      fullTextSession.index(list.get(i));


При первом вызове  fullTextSession.index(list.get(i)) появляется следующий эксепшн:

03:03:52,531 INFO   org.hibernate.HibernateException: Hibernate Search Event listeners not configured, please check the reference documentation and the application's hibernate.cfg.xml

Приложение работает под JBoss 4.2.1 .
Для работы с hibernate используется har - архив, в котором конфигурация хранится не в hibernate.cfg.xml, а в hibernate-service.xml .  В стандартном  hibernate-service.xml, из которого считывается конфигурация для формирования SessionFactory,  нет необходимых аттрибутов для описания этих event-listener'ов. В этом можно убедится по ссылке 
http://docs.jboss.org/jbossas/jboss4guide/r2/html/ch13.html
 

В hibernate.cfg.xml они регистрируются следующим образом : 
Код

<event type="post-update">
            <listener class="org.hibernate.search.event.FullTextIndexEventListener"/>
        </event>
        <event type="post-insert">
            <listener class="org.hibernate.search.event.FullTextIndexEventListener"/>
        </event>
        <event type="post-delete">
            <listener class="org.hibernate.search.event.FullTextIndexEventListener"/>
  </event>



SessionFactory у меня получается следующим образом:

 
Код

javax.naming.InitialContext ctx = new javax.naming.InitialContext();
 sessionFactory = (org.hibernate.SessionFactory) ctx.lookup("java:/myDS");



Подскажите плиз, как зарегистрировать эти listener'ы.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)