Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Caused by: org.hibernate.HibernateException: Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set
- import org.hibernate.ejb.HibernatePersistence;
- import org.springframework.context.annotation.Bean;
- import org.springframework.context.annotation.ComponentScan;
- import org.springframework.context.annotation.Configuration;
- import org.springframework.context.annotation.PropertySource;
- import org.springframework.core.env.Environment;
- import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
- import org.springframework.jdbc.datasource.DriverManagerDataSource;
- import org.springframework.orm.jpa.JpaTransactionManager;
- import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
- import org.springframework.transaction.annotation.EnableTransactionManagement;
- import javax.annotation.Resource;
- import javax.sql.DataSource;
- import java.util.Properties;
- @Configuration
- @EnableTransactionManagement
- @ComponentScan("ua.hillel.dnipro")
- @PropertySource("classpath:hiber.properties")
- @EnableJpaRepositories("ua.hillel.dnipro.repository")
- public class JpaConfig {
- private static final String PROP_DATABASE_DRIVER = "db.driver";
- private static final String PROP_DATABASE_PASSWORD = "db.password";
- private static final String PROP_DATABASE_URL = "db.url";
- private static final String PROP_DATABASE_USERNAME = "db.username";
- private static final String PROP_HIBERNATE_DIALECT = "db.hibernate.dialect";
- private static final String PROP_HIBERNATE_SHOW_SQL = "db.hibernate.show_sql";
- private static final String PROP_ENTITYMANAGER_PACKAGES_TO_SCAN = "db.entitymanager.packages.to.scan";
- private static final String PROP_HIBERNATE_HBM2DDL_AUTO = "db.hibernate.hbm2ddl.auto";
- @Resource
- private Environment env;
- @Bean
- public DataSource dataSource() {
- DriverManagerDataSource dataSource = new DriverManagerDataSource();
- dataSource.setDriverClassName(env.getRequiredProperty(PROP_DATABASE_DRIVER));
- dataSource.setUrl(env.getRequiredProperty(PROP_DATABASE_URL));
- dataSource.setUsername(env.getRequiredProperty(PROP_DATABASE_USERNAME));
- dataSource.setPassword(env.getRequiredProperty(PROP_DATABASE_PASSWORD));
- return dataSource;
- }
- @Bean
- public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
- LocalContainerEntityManagerFactoryBean entityManagerFactoryBean = new LocalContainerEntityManagerFactoryBean();
- entityManagerFactoryBean.setDataSource(dataSource());
- entityManagerFactoryBean.setPersistenceProviderClass(HibernatePersistence.class);
- entityManagerFactoryBean.setPackagesToScan(env.getRequiredProperty(PROP_ENTITYMANAGER_PACKAGES_TO_SCAN));
- entityManagerFactoryBean.setJpaProperties(getHibernateProperties());
- return entityManagerFactoryBean;
- }
- @Bean
- public JpaTransactionManager transactionManager() {
- JpaTransactionManager transactionManager = new JpaTransactionManager();
- transactionManager.setEntityManagerFactory(entityManagerFactory().getObject());
- return transactionManager;
- }
- private Properties getHibernateProperties() {
- Properties properties = new Properties();
- properties.put(PROP_HIBERNATE_DIALECT, env.getRequiredProperty(PROP_HIBERNATE_DIALECT));
- properties.put(PROP_HIBERNATE_SHOW_SQL, env.getRequiredProperty(PROP_HIBERNATE_SHOW_SQL));
- properties.put(PROP_HIBERNATE_HBM2DDL_AUTO, env.getRequiredProperty(PROP_HIBERNATE_HBM2DDL_AUTO));
- // properties.put(FORMAT_SQL, env.getRequiredProperty(FORMAT_SQL));
- return properties;
- }
- }
- #DB properties:
- db.driver=org.h2.Driver
- db.url=jdbc:h2:~/echo_data_base
- db.username=sa
- db.password=
- #Hibernate Configuration:
- db.hibernate.dialect=org.hibernate.dialect.H2Dialect
- db.hibernate.show_sql=true
- db.entitymanager.packages.to.scan=ua.hillel.dnipro
- db.hibernate.hbm2ddl.auto=update
Add Comment
Please, Sign In to add comment