0

我打电话时收到以下错误

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 会产生此异常

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

4

1 回答 1

0

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

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

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

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

于 2012-12-05T13:39:15.000 回答