2012-03-12 59 views
0

我目前正在使用JSF 2.0和Spring.As IDE进行中型Web项目的工作,我在Eclipse中使用JBoss Tools 。 Webapp部署到Tomcat v7.0服务器。 我使用Hibernate/JPA/C3P0 /来连接数据库(以前是HyperSQL)我现在试图切换到Oracle数据库,我之前做了很多次,它从来都不是问题,但现在看来,改变配置只是被忽略。当我启动服务器时,它仍然使用HyperSQl驱动程序和旧数据库,尽管我清理了Tomcat的工作目录,删除并重新部署了WebApp(我从头开始构建)。 该项目分为两个,一个webapp和一个服务部分。该项目依赖于Eclipse。但是,虽然所有的businesslogic都是在服务层实现的,但我可以将其删除,并且webapp不会抛出错误,我可以像没有任何更改一样启动它。这告诉我它必须缓存在某个地方,而不是在服务器上刷新......我也删除了服务器,添加了一个新下载的实例 - 仍然是同样的东西......有没有人有一个想法这可能是什么?Hibernate(JPA,JSF 2.0,Spring)从HyperSQL切换到Oracle - 配置被忽略

这里是我的service.spring.xml:

<!-- Enable processing of @PersistenceContext and @PersistenceUnit --> 
<context:annotation-config/> 

<!-- Enable transaction configuration with @Transactional --> 
<tx:annotation-driven transaction-manager="transactionManager"/> 

<!-- Configure a c3p0 pooled data source --> 
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> 
    <property name="user" value="user"/> 
    <property name="password" value="password"/> 
    <property name="driverClass" value="oracle.jdbc.driver.OracleDriver"/> 
    <property name="jdbcUrl" value="jdbc:oracle:thin:@dburl"/> 
    <property name="initialPoolSize" value="1"/> 
    <property name="minPoolSize" value="1"/> 
    <property name="maxPoolSize" value="10"/> 
</bean> 

<!-- Configure the JPA entity manager factory with Hibernate --> 
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> 
    <property name="dataSource" ref="dataSource"/> 

    <property name="jpaVendorAdapter"> 
     <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter"> 
      <property name="showSql" value="false"/> 
      <property name="database" value="ORACLE"/> 
      <property name="generateDdl" value="true"/> 
     </bean> 
    </property> 

    <property name="persistenceUnitName" value="mygourmet"/> 
</bean> 

<!-- Configure transaction manager for JPA --> 
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager"> 
    <property name="entityManagerFactory" ref="entityManagerFactory"/> 
</bean> 

而且我的persistence.xml:

<persistence-unit name="mygourmet" transaction-type="RESOURCE_LOCAL"> 
    <properties> 
     <property name="hibernate.dialect" value="org.hibernate.dialect.OracleDialect" /> 
     <property name="hibernate.show_sql" value="false" /> 
     <property name="hibernate.format_sql" value="false" /> 
     <property name="hibernate.use_sql_comments" value="false" /> 
     <property name="hibernate.connection.autocommit" value="false" /> 
     <property name="hibernate.cache.use_query_cache" value="false" /> 
     <property name="hibernate.cache.use_second_level_cache" value="false" /> 
     <property name="hibernate.hbm2ddl.auto" value="create" /> 
    </properties> 

我用另一个项目完全相同的配置,它就像一个魅力..任何提示都非常感谢,提前谢谢你!

+0

Tomcat默认解包你的war文件。你是否删除了战争和解压后的文件夹? – 2012-03-12 10:32:42

+0

我使用JBOSS tomcat插件进行日食,所以日食应该自动处理,但谢谢你的提示! – user871784 2012-03-13 13:48:12

回答

0

问题解决了 - 我做了一个mvn clean install,生成了新的eclipse项目并将它们导入到eclipse中。看来我的服务模块中的变化没有被eclipse识别。