Hibernate配置麻烦

时间:2013-02-22 10:50:13

标签: java hibernate weblogic

尝试休眠&做手册说。但它不起作用。

package util;

//imports

public class HibernateUtil {
    private static SessionFactory sessionFactory = null;

    static {
        try {
            System.out.println("HU 01");
            Configuration configuration = new Configuration();
            System.out.println("HU 02");
            configuration.configure();
            System.out.println("HU 03");
                //creates the session factory from hibernate.cfg.xml
            ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();   
            System.out.println("HU 04");     
            sessionFactory = configuration.buildSessionFactory(serviceRegistry);
            System.out.println("HU 05");
        } catch (Exception e) {
            System.out.println("HU 06");
              e.printStackTrace();
        }
    }

    public static SessionFactory getSessionFactory() {

        System.out.println("HU 00");
        return sessionFactory;
    }
}

我有下一个日志(放置System.out ......无处不在):

Main class starts.
Factory initialised.
Factory.Entity initialised.
ImplDAO 1
HU 01
ImplDAO 8
Exception in thread "main" java.lang.NoClassDefFoundError: org/jboss/logging/BasicLogger
    at org.hibernate.cfg.Configuration.<clinit>(Configuration.java:176)
    at util.HibernateUtil.<clinit>(HibernateUtil.java:14)
    at dao.impl.ImplDAO.setData(ImplDAO.java:27)
    at service.MainClass.main(MainClass.java:17)

“HU 01”出现在控制台中,“HU 02”没有出现。所以,我想,我有一些hibernate.cfg.xml问题,但它也是用手册制作的:

    <?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.driver_class">oracle.jdbc.OracleDriver</property>
    <property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1251:XE</property>
    <property name="hibernate.connection.username">SYSTEM</property>
    <property name="hibernate.connection.password">12345</property>

    <property name="hibernate.connection.pool_size">10</property>
    <property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>
    <property name="show_sql">true</property>
    <property name="hbm2ddl.auto">update</property>
    <property name="hibernate.connection.autocommit">false</property>
    <property name="current_session_context_class">thread</property>

    <mapping class="logic.EntityClass" />

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

我的环境:

Hibernate 4.1
WebLogic Server 11gR1
Oracle DataBase 11g Express Edition
Eclipse Juno
JRE: jdk1.7.0_09
    (same thing with Oracle WebLogic Server 11gR1 (10.3.2) JRE)

AnyIdea?

3 个答案:

答案 0 :(得分:1)

这不是Hibernate配置问题。你缺少一个依赖:jboss-logging.jar。这就是为什么你的程序找不到org.jboss.logging.BasicLogger类的原因

答案 1 :(得分:1)

您错过了一个或多个依赖项。这是我的一个项目的依赖关系层次结构:

enter image description here

确保您的应用程序的类路径中包含所需的jar。如果可能,请使用maven。它为你做了很多其他事情的依赖管理。

答案 2 :(得分:0)

你需要jboss-logging-3.1.0.GA附带hibernate发行版,或者它可以单独下载。