List of usage examples for javax.persistence EntityManagerFactory toString
public String toString()
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./* ww w. j av a 2 s. c o m*/ */ 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:org.seedstack.spring.internal.SpringEntityManagerLink.java
private String getUnitName(EntityManagerFactory emf) { Map<String, Object> properties = emf.getProperties(); String unitName = String.valueOf(properties.get(HIBERNATE_UNIT_NAME_PROPERTY)); if (StringUtils.isBlank(unitName)) { unitName = String.valueOf(properties.get(GENERIC_UNIT_NAME_PROPERTY)); } else if (StringUtils.isBlank(unitName)) { throw SeedException.createNew(SpringErrorCode.UNABLE_TO_RESOLVE_JPA_UNIT).put("entityManagerFactory", emf.toString());/* ww w . j a v a 2 s .co m*/ } return unitName; }