我试图用Alfresco 5.2连接第二个数据库。
我使用spring xml文件定义配置:
数据库上下文。xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:jpa="http://www.springframework.org/schema/data/jpa"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.2.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd">
<tx:annotation-driven transaction-manager="transactionManager" />
<!-- Activate Spring Data JPA repository support
<jpa:repositories base-package="com.klinck.mc.repository" /> -->
<!-- 3) Declare a datasource that has pooling capabilities-->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="org.postgresql.Driver" />
<property name="jdbcUrl" value="jdbc:postgresql://localhost:5432/klinck" />
<property name="user" value="postgres" />
<property name="password" value="admin" />
<!--<property name="password" value="#{cipher.decrypt('${jdbc.user.password}')}" /> -->
<!-- C3P0 Pool Properties -->
<property name="initialPoolSize" value="10" />
<property name="acquireIncrement" value="10" />
<property name="minPoolSize" value="10" />
<property name="maxPoolSize" value="200" />
<property name="maxIdleTime" value="3600" />
<property name="maxIdleTimeExcessConnections" value="300" />
<property name="unreturnedConnectionTimeout" value="3600" />
<property name="numHelperThreads" value="6" />
<property name="maxStatements" value="200" />
</bean>
<!-- 2) Declare a JPA entityManagerFactory -->
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="packagesToScan" value="com.klinck.mc.bean" />
<!-- <property name="persistenceXmlLocation" value="classpath:META-INF/resources/hibernate/persistence.xml" /> -->
<property name="persistenceUnitName" value="hibernatePersistenceUnit" />
<property name="dataSource" ref="dataSource" />
<property name="jpaVendorAdapter" ref="hibernateVendor" />
<property name="jpaProperties">
<props>
<prop key="hibernate.hbm2ddl.auto">none</prop>
<prop key="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
</bean>
<!-- 4) Specify our ORM vendor -->
<bean id="hibernateVendor" class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
<property name="showSql" value="true" />
</bean>
<!-- 1) Declare a transaction manager-->
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory" />
</bean>
</beans>
我已经更新了POM。xml文件:
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
<version>2.0.9.RELEASE</version>
</dependency>
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.1-api</artifactId>
<version>1.0.2.Final</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-entitymanager -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>4.2.4.Final</version>
<scope>runtime</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.javassist/javassist -->
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.23.1-GA</version>
</dependency>
<!-- meilleure gestion des pools de connexion -->
<!-- https://mvnrepository.com/artifact/com.mchange/c3p0 -->
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.2</version>
</dependency>
但关于“entityManagerFactory”bean,我会遇到如下错误:
“java.lang.NoSuchMethodError:org.hibernate.cfg.Environment.verifyProperties”
我在这里找到了解决方案:
http://forum.spring.io/forum/spring-projects/data/121744-jpa-2-0-hibernate-4-0-1-spring-3-1-1-compatibility
但现在我有另一条消息
“java.lang.NoSuchMethodError:org.hibernate.cfg.Configuration.addAnnotatedClass(Ljava/lang/Class;)Lorg/hibernate/cfg/Configuration;"
我注意到这个方法包含在hibernate-core-4.2.4中。最终的罐子
所以我认为这仍然是一个冲突问题。
但我想知道我们是否可以像这样在户外冬眠。。。
在户外冬眠的最佳方式是什么?