GWT + spring + hibernate错误创建bean SessionFactory

时间:2012-12-04 21:36:51

标签: spring hibernate gwt

调用

时出现以下错误
  

ApplicationContext ctx = new ClassPathXmlApplicationContext(“spring.xml”)   `       

<bean id="derbyDataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="org.apache.derby.jdbc.EmbeddedDriver" />
    <property name="url" value="jdbc:derby:db/analyticsDB;create=true" />
    <property name="username" value="username" />
    <property name="password" value="password" />
    <property name="initialSize" value="5" />
    <property name="maxActive" value="50" />
</bean>

<bean id="sessionFactory"
    class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
    <property name="dataSource" ref="derbyDataSource" />
    <property name="packagesToScan" value="com.example.analytics.model" />
    <property name="hibernateProperties">
        <props>
            <prop key="dialect">org.hibernate.dialect.DerbyDialect</prop>
            <prop key="hibernate.show_sql">true</prop> 
            <prop key="hibernate.hbm2ddl.auto">create</prop> 
        </props>
    </property>
</bean>

`

将log4j版本更改为1.2.15会生成this exception

将以下内容添加到spring.xml后,问题得到了解决 <prop key="javax.persistence.validation.mode">none</prop>

1 个答案:

答案 0 :(得分:0)

这里的重要部分是java.lang.NoSuchFieldError: TRACE

您正在使用的 log4j / slf4j 版本似乎有误。

您应该只使用 log4j 版本 1.2.12 或更高版本,并确保您的 log4j jar只有一个版本类路径。

您还应确保不使用低于 1.5.1 slf4j 版本。