Pessoal,
Estou me deparando com esse erro intermitente do Hibernate… O banco de dados é um MySQL e está no mesmo servidor do tomcat… O serviço ainda não entrou em produção, ou seja, não está havendo uma carga no mysql que chegue ao número máximo de conexões.
A exception é a seguinte:
SEVERE: >>org.springframework.transaction.CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is javax.persistence.PersistenceException: org.hibernate.TransactionException: JDBC begin failed:
>>javax.persistence.PersistenceException: org.hibernate.TransactionException: JDBC begin failed:
>>org.hibernate.TransactionException: JDBC begin failed:
[SQL: 0, 08S01]
>>com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
>>
>>** BEGIN NESTED EXCEPTION **
>>
>>java.io.EOFException
O spring-context.xml está da seguinte forma:
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close"
p:driverClassName="${jdbc.driver}"
p:url="${jdbc.url}"
p:username="${jdbc.username}"
p:password="${jdbc.password}" />
<bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"
p:persistence-xml-location="classpath:META-INF/persistence.xml"
p:data-source-ref="dataSource"
>
<property name="jpaVendorAdapter">
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter"
p:showSql="true"
p:generateDdl="true">
</bean>
</property>
<property name="jpaProperties">
<value>
hibernate.ejb.naming_strategy=org.hibernate.cfg.ImprovedNamingStrategy
hibernate.dialect=${hibernate.dialect}
hibernate.hbm2ddl.auto=${hibernate.hbm2ddl.auto}
</value>
</property>
</bean>
<bean id="transactionManager"
class="org.springframework.orm.jpa.JpaTransactionManager"
p:entity-manager-factory-ref="entityManagerFactory"
/>