Example usage for org.springframework.orm.jpa LocalContainerEntityManagerFactoryBean setJpaVendorAdapter

List of usage examples for org.springframework.orm.jpa LocalContainerEntityManagerFactoryBean setJpaVendorAdapter

Introduction

In this page you can find the example usage for org.springframework.orm.jpa LocalContainerEntityManagerFactoryBean setJpaVendorAdapter.

Prototype

public void setJpaVendorAdapter(@Nullable JpaVendorAdapter jpaVendorAdapter) 

Source Link

Document

Specify the JpaVendorAdapter implementation for the desired JPA provider, if any.

Usage

From source file:com.qpark.eip.core.spring.lockedoperation.config.EipLockedoperationConfig.java

/**
 * Get the {@link LocalContainerEntityManagerFactoryBean}.
 *
 * @return the {@link LocalContainerEntityManagerFactoryBean}.
 *//*w  w  w. j a  v a2  s.  c om*/
@Bean(name = ENTITY_MANAGER_FACTORY_NAME)
public EntityManagerFactory getEntityManagerFactory() {
    AbstractJpaVendorAdapter jpaVendorAdapter = this.getJpaVendorAdapter();
    if (jpaVendorAdapter == null) {
        throw new RuntimeException(String.format("%s jpaVendorAdpater not set properly %s.",
                ENTITY_MANAGER_FACTORY_NAME, String.valueOf(jpaVendorAdapter)));
    }

    String jpaVendorAdapterDatabasePlatform = this.jpaVendorAdapterConfiguration
            .getJpaVendorAdpaterDatabasePlatform();
    if (jpaVendorAdapterDatabasePlatform == null || jpaVendorAdapterDatabasePlatform.trim().length() == 0) {
        throw new RuntimeException(String.format("%s jpaVendorAdpaterDatabasePlatform not set properly %s.",
                ENTITY_MANAGER_FACTORY_NAME, String.valueOf(jpaVendorAdapterDatabasePlatform)));
    }

    LocalContainerEntityManagerFactoryBean bean = new LocalContainerEntityManagerFactoryBean();
    bean.setPersistenceXmlLocation(new StringBuffer(96).append("classpath:/META-INF/")
            .append(PERSISTENCE_UNIT_NAME).append("/persistence.xml").toString());
    bean.setPersistenceUnitName(PERSISTENCE_UNIT_NAME);
    bean.setDataSource(this.datasource);

    jpaVendorAdapter.setDatabasePlatform(jpaVendorAdapterDatabasePlatform);
    jpaVendorAdapter.setShowSql(false);
    if (this.isJpaVendorAdapterGenerateDdl()) {
        jpaVendorAdapter.setGenerateDdl(true);
        if (HibernateJpaVendorAdapter.class.isInstance(jpaVendorAdapter)) {
            bean.getJpaPropertyMap().put("hibernate.hbm2ddl.auto", "update");
        }
    } else {
        jpaVendorAdapter.setGenerateDdl(false);
    }

    bean.setJpaVendorAdapter(jpaVendorAdapter);
    bean.afterPropertiesSet();
    return bean.getObject();
}

From source file:fr.univlorraine.mondossierweb.config.JpaConfig.java

/**
 * EntityManager Factory/* w w  w.ja  v  a  2 s .  co m*/
 * @return
 */
@Bean
@DependsOn("flyway")
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
    LocalContainerEntityManagerFactoryBean localContainerEntityManagerFactoryBean = new LocalContainerEntityManagerFactoryBean();
    localContainerEntityManagerFactoryBean.setPersistenceUnitName(PERSISTENCE_UNIT_NAME);
    localContainerEntityManagerFactoryBean.setPackagesToScan(Favoris.class.getPackage().getName());
    localContainerEntityManagerFactoryBean.setDataSource(dataSource());
    localContainerEntityManagerFactoryBean.setJpaDialect(new EclipseLinkJpaDialect());

    Properties jpaProperties = new Properties();
    /* Active le static weaving d'EclipseLink */
    jpaProperties.put(PersistenceUnitProperties.WEAVING, "static");
    /* Dsactive le cache partag */
    jpaProperties.put(PersistenceUnitProperties.CACHE_SHARED_DEFAULT, String.valueOf(false));
    localContainerEntityManagerFactoryBean.setJpaProperties(jpaProperties);

    EclipseLinkJpaVendorAdapter jpaVendorAdapter = new EclipseLinkJpaVendorAdapter();
    jpaVendorAdapter.setGenerateDdl(false);
    jpaVendorAdapter.setShowSql(false);
    localContainerEntityManagerFactoryBean.setJpaVendorAdapter(jpaVendorAdapter);

    return localContainerEntityManagerFactoryBean;
}

From source file:fr.univlorraine.mondossierweb.config.JpaConfigApogee.java

/**
 * EntityManager Factory//from  w  ww .  j a  v  a2s  . com
 * @return
 */
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactoryApogee() {
    LocalContainerEntityManagerFactoryBean localContainerEntityManagerFactoryBean = new LocalContainerEntityManagerFactoryBean();
    localContainerEntityManagerFactoryBean.setPersistenceUnitName(PERSISTENCE_UNIT_NAME);
    localContainerEntityManagerFactoryBean.setPackagesToScan(VObjSeApogee.class.getPackage().getName());
    localContainerEntityManagerFactoryBean.setDataSource(dataSourceApogee());
    localContainerEntityManagerFactoryBean.setJpaDialect(new EclipseLinkJpaDialect());

    Properties jpaProperties = new Properties();
    /* Active le static weaving d'EclipseLink */
    jpaProperties.put(PersistenceUnitProperties.WEAVING, "static");
    /* Dsactive le cache partag */
    jpaProperties.put(PersistenceUnitProperties.CACHE_SHARED_DEFAULT, String.valueOf(false));
    localContainerEntityManagerFactoryBean.setSharedCacheMode(SharedCacheMode.NONE);
    localContainerEntityManagerFactoryBean.setJpaProperties(jpaProperties);

    EclipseLinkJpaVendorAdapter jpaVendorAdapter = new EclipseLinkJpaVendorAdapter();
    jpaVendorAdapter.setGenerateDdl(false);
    jpaVendorAdapter.setShowSql(false);
    localContainerEntityManagerFactoryBean.setJpaVendorAdapter(jpaVendorAdapter);

    return localContainerEntityManagerFactoryBean;
}

From source file:fr.paris.lutece.portal.service.jpa.JPAStartupService.java

/**
 * Initialize JPA objects (Datasource, Persistence Unit Manager, Entity Manager Factory,
 * Transaction Manager) for each pool./*from  w ww .  ja v  a2s.  com*/
 */
public void process() {
    ReferenceList list = new ReferenceList();
    AppConnectionService.getPoolList(list);

    Map<String, EntityManagerFactory> mapFactories = new HashMap<String, EntityManagerFactory>();
    List<PlatformTransactionManager> listTransactionManagers = new ArrayList<PlatformTransactionManager>();
    _log.info("JPA Startup Service : Initializing JPA objects ...");

    String strDialectProperty = AppPropertiesService.getProperty(JPA_DIALECT_PROPERTY);

    for (ReferenceItem poolItem : list) {
        String strPoolname = poolItem.getCode();

        DataSource ds = AppConnectionService.getPoolManager().getDataSource(strPoolname);
        _log.info("JPA Startup Service : DataSource retrieved for pool : " + strPoolname);
        _log.debug("> DS : " + ds.toString());

        DefaultPersistenceUnitManager pum = new DefaultPersistenceUnitManager();
        pum.setDefaultDataSource(ds);

        PersistenceUnitPostProcessor[] postProcessors = { new JPAPersistenceUnitPostProcessor() };
        pum.setPersistenceUnitPostProcessors(postProcessors);

        pum.afterPropertiesSet();

        _log.info("JPA Startup Service : Persistence Unit Manager for pool : " + strPoolname);
        _log.debug("> PUM : " + pum.toString());

        LocalContainerEntityManagerFactoryBean lcemfb = new LocalContainerEntityManagerFactoryBean();
        lcemfb.setDataSource(ds);
        lcemfb.setPersistenceUnitManager(pum);
        lcemfb.setPersistenceUnitName("jpaLuteceUnit");

        JpaDialect jpaDialect = (JpaDialect) SpringContextService.getBean("jpaDialect");
        lcemfb.setJpaDialect(jpaDialect);

        Map mapJpaProperties = (Map) SpringContextService.getBean("jpaPropertiesMap");
        lcemfb.setJpaPropertyMap(mapJpaProperties);

        String strDialect = AppPropertiesService.getProperty(poolItem.getName() + ".dialect");

        // replace default dialect if <poolname>.dialect is specified
        if (StringUtils.isNotBlank(strDialect)) {
            mapJpaProperties.put(strDialectProperty, strDialect);
        }

        _log.debug("Using dialect " + mapJpaProperties.get(strDialectProperty) + " for pool "
                + poolItem.getName());

        JpaVendorAdapter jpaVendorAdapter = (JpaVendorAdapter) SpringContextService.getBean("jpaVendorAdapter");
        lcemfb.setJpaVendorAdapter(jpaVendorAdapter);

        lcemfb.afterPropertiesSet();

        EntityManagerFactory emf = lcemfb.getNativeEntityManagerFactory();
        _log.info("JPA Startup Service : EntityManagerFactory created for pool : " + strPoolname);
        _log.debug("> EMF : " + emf.toString());

        JpaTransactionManager tm = new JpaTransactionManager();
        tm.setEntityManagerFactory(emf);
        tm.setJpaDialect(jpaDialect);
        _log.debug("> JpaDialect " + jpaDialect);
        tm.afterPropertiesSet();
        _log.info("JPA Startup Service : JPA TransactionManager created for pool : " + strPoolname);
        _log.debug("> TM : " + tm.toString());

        mapFactories.put(strPoolname, emf);
        listTransactionManagers.add(tm);
    }

    EntityManagerService ems = (EntityManagerService) SpringContextService.getBean("entityManagerService");
    ems.setMapFactories(mapFactories);

    ChainedTransactionManager ctm = (ChainedTransactionManager) SpringContextService
            .getBean("transactionManager");
    ctm.setTransactionManagers(listTransactionManagers);
    _log.info("JPA Startup Service : completed successfully");
}

From source file:net.sp1d.chym.loader.RootConfig.java

@Bean
LocalContainerEntityManagerFactoryBean entityManagerFactory() {
    LocalContainerEntityManagerFactoryBean emf = new LocalContainerEntityManagerFactoryBean();

    HibernateJpaVendorAdapter va = new HibernateJpaVendorAdapter();
    va.setDatabasePlatform("org.hibernate.dialect.MySQL5InnoDBDialect");
    va.setGenerateDdl(true);/*  w  ww . j a v  a  2  s  .co m*/

    emf.setJpaVendorAdapter(va);
    emf.setDataSource(dataSource());
    emf.setPackagesToScan("net.sp1d.chym.loader.bean", "net.sp1d.chym.loader.tracker",
            "net.sp1d.chym.loader.repo");
    emf.setPersistenceUnitName("net.sp1d.loader.chym_PU");

    Properties properties = new Properties();
    properties.setProperty("hibernate.event.merge.entity_copy_observer", "allow");

    emf.setJpaProperties(properties);

    return emf;
}

From source file:net.sp1d.chym.loader.RootConfigDev.java

@Bean
LocalContainerEntityManagerFactoryBean entityManagerFactory() {
    LocalContainerEntityManagerFactoryBean emf = new LocalContainerEntityManagerFactoryBean();

    emf.setPersistenceUnitName("net.sp1d.loader.chym_PU");

    HibernateJpaVendorAdapter va = new HibernateJpaVendorAdapter();
    //        va.setDatabasePlatform("org.hibernate.dialect.HSQLDialect");
    va.setDatabasePlatform("org.hibernate.dialect.MySQL5InnoDBDialect");
    va.setGenerateDdl(true);/*from  w w  w .  j a v  a 2s. c  o m*/

    emf.setJpaVendorAdapter(va);
    emf.setDataSource(dataSource());
    emf.setPackagesToScan("net.sp1d.chym.loader.bean", "net.sp1d.chym.loader.tracker",
            "net.sp1d.chym.loader.repo", "net.sp1d.chym.loader.tracker");

    Properties properties = new Properties();
    properties.setProperty("hibernate.event.merge.entity_copy_observer", "allow");

    emf.setJpaProperties(properties);

    return emf;
}

From source file:org.activiti.spring.test.jpa.JPASpringTest.java

@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactoryBean(
        OpenJpaVendorAdapter openJpaVendorAdapter, DataSource ds) {
    LocalContainerEntityManagerFactoryBean emf = new LocalContainerEntityManagerFactoryBean();
    emf.setPersistenceXmlLocation("classpath:/org/activiti/spring/test/jpa/custom-persistence.xml");
    emf.setJpaVendorAdapter(openJpaVendorAdapter);
    emf.setDataSource(ds);//from  www . ja v a2  s  .co  m
    return emf;
}

From source file:org.finra.dm.dao.config.DaoSpringModuleConfig.java

/**
 * The JPA entity manager factory.//from  w  ww .  j  a  va2  s.com
 *
 * @return the entity manager factory.
 */
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
    // Create the entity manager factory against our data source.
    LocalContainerEntityManagerFactoryBean entityManagerFactory = new LocalContainerEntityManagerFactoryBean();
    entityManagerFactory.setDataSource(getDmDataSource());

    // Auto-scan our model classes for persistent objects.
    entityManagerFactory.setPackagesToScan(MODEL_PACKAGES_TO_SCAN);

    // Set the JPA vendor adapter using a configured Spring bean.
    entityManagerFactory.setJpaVendorAdapter(getHibernateJpaVendorAdapter());

    // Set JPA additional properties.
    entityManagerFactory.setJpaProperties(jpaProperties());

    return entityManagerFactory;
}

From source file:org.finra.herd.dao.config.DaoSpringModuleConfig.java

/**
 * The JPA entity manager factory./*from   ww  w .  j a v a2s. c  o m*/
 *
 * @return the entity manager factory.
 */
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
    // Create the entity manager factory against our data source.
    LocalContainerEntityManagerFactoryBean entityManagerFactory = new LocalContainerEntityManagerFactoryBean();
    entityManagerFactory.setDataSource(getHerdDataSource());

    // Auto-scan our model classes for persistent objects.
    entityManagerFactory.setPackagesToScan(MODEL_PACKAGES_TO_SCAN);

    // Set the JPA vendor adapter using a configured Spring bean.
    entityManagerFactory.setJpaVendorAdapter(getHibernateJpaVendorAdapter());

    // Set JPA additional properties.
    entityManagerFactory.setJpaProperties(jpaProperties());

    return entityManagerFactory;
}

From source file:org.jgrades.data.context.DataContext.java

@Bean
LocalContainerEntityManagerFactoryBean mainEntityManagerFactory(DataSource mainDataSource) {
    LocalContainerEntityManagerFactoryBean entityManagerFactoryBean = new LocalContainerEntityManagerFactoryBean();
    entityManagerFactoryBean.setDataSource(mainDataSource);
    entityManagerFactoryBean.setJpaVendorAdapter(new HibernateJpaVendorAdapter());
    entityManagerFactoryBean.setPackagesToScan(packagesToScan.toArray(new String[] {}));

    Properties jpaProperties = new Properties();
    jpaProperties.put("hibernate.dialect", "org.hibernate.dialect.PostgreSQLDialect");
    jpaProperties.put("hibernate.hbm2ddl.auto", schemaOrmPolicy);
    jpaProperties.put("hibernate.show_sql", showSql);
    jpaProperties.put("hibernate.format_sql", formatSql);
    jpaProperties.put("hibernate.enable_lazy_load_no_trans", true);
    entityManagerFactoryBean.setJpaProperties(jpaProperties);

    return entityManagerFactoryBean;
}