在hibernate中默认使用的是单数据源的缓存配置,如果你想使用多数据源,你应该把缓存的配置修改一下,具体修改方式应该把
<property name="hibernate.cache.provider_class">XXXX</property>,其中XXXX的值应该修改为一个可以供分布市环境使用的缓存,比如jboss的缓存等。

解决方案 »

  1.   

    配置两个Sessionfactory就可以了吧,我同事配过的。
      

  2.   

    我也试过配置两个Sessionfactory,但是不行。
      

  3.   

    <bean id="myData" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName">
    <value>oracle.jdbc.driver.OracleDriver</value>
    </property>
    <property name="url">
    <value>jdbc:oracle:thin:@localhost:1521:oracle</value>
    </property>
    <property name="username">
    <value>scott</value>
    </property>
    <property name="password">
    <value>tiger</value>
    </property>
    </bean> <bean id="mySessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
         <property name="dataSource">
         <ref bean="myData" />
         </property>
         <property name="hibernateProperties">
         <props>
         <prop key="hibernate.dialect">org.hibernate.dialect.Oracle9Dialect</prop>
         <prop key="hibernate.show_sql">true</prop>
         </props>
         </property>
         <property name="mappingResources">
         <list>
         <value>po/Projectpo.hbm.xml</value>
         <value>po/Signbookpo.hbm.xml</value>
         </list>
         </property>
        </bean>
      

  4.   

    以上的错误,是因为使用的hibernate包有问题造成的。可以换一个包来试用。
    MyEclipse所带的一些开发包,问题多多。