Olá pessoal, vi que, assim como eu, muita gente não estava conseguindo fazer funcionar a configuração do JPA para criar/acessar o MySQL e continuar com as atividades do curso. Depois de dois dias tentando n possíveis soluções eu desisti do MySQL e fui para o o PostgreSQL. Com isso decidi compartilhar minha configuração para quem deseja prosseguir dessa maneira, ou que ainda venha a ter esse problema.
JPAConfiguration
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
LocalContainerEntityManagerFactoryBean containerEntityManagerFactoryBean = new LocalContainerEntityManagerFactoryBean();
JpaVendorAdapter jpaVendorAdapter = new HibernateJpaVendorAdapter();
containerEntityManagerFactoryBean.setJpaVendorAdapter(jpaVendorAdapter);
DriverManagerDataSource driverManagerDataSource = new DriverManagerDataSource();
driverManagerDataSource.setUsername("admin");
driverManagerDataSource.setPassword("admin");
driverManagerDataSource.setUrl("jdbc:postgresql://localhost:5432/casadocodigo");
driverManagerDataSource.setDriverClassName("org.postgresql.Driver");
containerEntityManagerFactoryBean.setDataSource(driverManagerDataSource);
Properties props = new Properties();
props.setProperty("hibernate.dialect", "org.hibernate.dialect.PostgreSQLDialect");
props.setProperty("hibernate.show_sql", "true");
props.setProperty("hibernate.hbm2ddl.auto", "update");
containerEntityManagerFactoryBean.setJpaProperties(props);
containerEntityManagerFactoryBean.setPackagesToScan("br.com.casadocodigo.loja.models");
return containerEntityManagerFactoryBean;
}
Dependências Maven, além de mudarmos o driver, temos que inserir a do jaxb por causa de alguns ClassNotFound que estouram.
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.1-901-1.jdbc4</version>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.2.11</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-core</artifactId>
<version>2.2.11</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.2.11</version>
</dependency>
Espero que possa ter ajudado. Qualquer coisa comentem aí.
Vlw!