Java 未找到配置的本地数据源-';数据源';必须在LocalSessionFactoryBean上设置属性

Java 未找到配置的本地数据源-';数据源';必须在LocalSessionFactoryBean上设置属性,java,spring,hibernate,Java,Spring,Hibernate,我使用的是Spring3.0和Hibernate3.6数据源定义为 <bean id="test-pool" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />

我使用的是Spring3.0和Hibernate3.6
数据源定义为

<bean id="test-pool"
        class="org.springframework.jdbc.datasource.DriverManagerDataSource">
            <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
            <property name="url"
                value="jdbc:sqlserver://Machine:1433;databaseName=TEST;maxPoolSize=100;
                minPoolSize=5;acquireIncrement=5;checkoutTimeout=5000;maxStatements=100;idleConnectionTestPeriod=3000" />
            <property name="username" value="${user}" />
            <property name="password" value="${database.password}"/>

    </bean>
但我有以下例外

org.hibernate.HibernateException: No local DataSource found for configuration - 'dataSource' property must be set on LocalSessionFactoryBean
    at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.configure(LocalDataSourceConnectionProvider.java:49)
    at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:143)
    at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:84)
    at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:459)
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:91)
我当前的代码有什么问题

如果我再次像这样显式获取SessionFactory,我将消除此异常:

SessionFactory sessionFactory = (SessionFactory) AppContext.getBean("sessionFactory");

正如你所看到的,它并不整洁,我想摆脱它。

你使用的是什么版本的Hibernate?表明3.2.1中存在与您症状相同的问题。也许是时候更新您的版本了-hibernate现在是4.1.4

您的异常中是否嵌套了其他内容?你的东西看起来不错。我预计spring无法创建您的数据源(可能找不到驱动程序jar),还有更多细节somewhwere@hvgotcodes请参考我的更新问题。我正在使用Hibernate 3,无法升级我的版本。我们在代码的深处使用了一些hibernate 3特定的类,这些类在hibernate 4中是不可用的。好吧,文章说3.2.2修复了这个问题,所以您可以继续使用hibernate 3。有必要快速检查一下您是否有早期版本。当然,我会尝试Hibernate 3.2.2,如果它能工作,请提前感谢:)应用程序有Hibernate 3.6版
org.hibernate.HibernateException: No local DataSource found for configuration - 'dataSource' property must be set on LocalSessionFactoryBean
    at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.configure(LocalDataSourceConnectionProvider.java:49)
    at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:143)
    at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:84)
    at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:459)
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:91)
SessionFactory sessionFactory = (SessionFactory) AppContext.getBean("sessionFactory");