List of usage examples for org.hibernate.cfg AvailableSettings JTA_PLATFORM
String JTA_PLATFORM
To view the source code for org.hibernate.cfg AvailableSettings JTA_PLATFORM.
Click Source Link
From source file:com.baomidou.hibernateplus.HibernateSpringSessionFactoryBuilder.java
License:Apache License
/** * Set the Spring {@link JtaTransactionManager} or the JTA {@link TransactionManager} * to be used with Hibernate, if any. Allows for using a Spring-managed transaction * manager for Hibernate 5's session and cache synchronization, with the * "hibernate.transaction.jta.platform" automatically set to it. * <p>A passed-in Spring {@link JtaTransactionManager} needs to contain a JTA * {@link TransactionManager} reference to be usable here, except for the WebSphere * case where we'll automatically set {@code WebSphereExtendedJtaPlatform} accordingly. * <p>Note: If this is set, the Hibernate settings should not contain a JTA platform * setting to avoid meaningless double configuration. *///w ww. jav a2s .co m public HibernateSpringSessionFactoryBuilder setJtaTransactionManager(Object jtaTransactionManager) { Assert.notNull(jtaTransactionManager, "Transaction manager reference must not be null"); if (jtaTransactionManager instanceof JtaTransactionManager) { boolean webspherePresent = ClassUtils.isPresent("com.ibm.wsspi.uow.UOWManager", getClass().getClassLoader()); if (webspherePresent) { getProperties().put(AvailableSettings.JTA_PLATFORM, "org.hibernate.engine.transaction.jta.platform.internal.WebSphereExtendedJtaPlatform"); } else { JtaTransactionManager jtaTm = (JtaTransactionManager) jtaTransactionManager; if (jtaTm.getTransactionManager() == null) { throw new IllegalArgumentException( "Can only apply JtaTransactionManager which has a TransactionManager reference set"); } getProperties().put(AvailableSettings.JTA_PLATFORM, new HibernateConfigurableJtaPlatform(jtaTm.getTransactionManager(), jtaTm.getUserTransaction(), jtaTm.getTransactionSynchronizationRegistry())); } } else if (jtaTransactionManager instanceof TransactionManager) { getProperties().put(AvailableSettings.JTA_PLATFORM, new HibernateConfigurableJtaPlatform((TransactionManager) jtaTransactionManager, null, null)); } else { throw new IllegalArgumentException( "Unknown transaction manager type: " + jtaTransactionManager.getClass().getName()); } // Hibernate 5.1/5.2: manually enforce connection release mode AFTER_STATEMENT (the JTA default) try { // Try Hibernate 5.2 AvailableSettings.class.getField("CONNECTION_HANDLING"); getProperties().put("hibernate.connection.handling_mode", "DELAYED_ACQUISITION_AND_RELEASE_AFTER_STATEMENT"); } catch (NoSuchFieldException ex) { // Try Hibernate 5.1 try { AvailableSettings.class.getField("ACQUIRE_CONNECTIONS"); getProperties().put("hibernate.connection.release_mode", "AFTER_STATEMENT"); } catch (NoSuchFieldException ex2) { // on Hibernate 5.0.x or lower - no need to change the default there } } return this; }
From source file:org.babyfish.springframework.orm.hibernate.LocalXSessionFactoryBuilder.java
License:Open Source License
/** * Set the Spring {@link JtaTransactionManager} or the JTA {@link TransactionManager} * to be used with Hibernate, if any. Allows for using a Spring-managed transaction * manager for Hibernate 4's session and cache synchronization, with the * "hibernate.transaction.jta.platform" automatically set to it. Also sets * "hibernate.transaction.factory_class" to {@link CMTTransactionFactory}, * instructing Hibernate to interact with externally managed transactions. * <p>A passed-in Spring {@link JtaTransactionManager} needs to contain a JTA * {@link TransactionManager} reference to be usable here, except for the WebSphere * case where we'll automatically set {@link WebSphereExtendedJtaPlatform} accordingly. * <p>Note: If this is set, the Hibernate settings should not contain a JTA platform * setting to avoid meaningless double configuration. *//*from ww w. j ava 2 s .c o m*/ public LocalXSessionFactoryBuilder setJtaTransactionManager(Object jtaTransactionManager) { Assert.notNull(jtaTransactionManager, "Transaction manager reference must not be null"); if (jtaTransactionManager instanceof JtaTransactionManager) { boolean webspherePresent = ClassUtils.isPresent("com.ibm.wsspi.uow.UOWManager", getClass().getClassLoader()); if (webspherePresent) { getProperties().put(AvailableSettings.JTA_PLATFORM, new WebSphereExtendedJtaPlatform()); } else { JtaTransactionManager jtaTm = (JtaTransactionManager) jtaTransactionManager; if (jtaTm.getTransactionManager() == null) { throw new IllegalArgumentException( "Can only apply JtaTransactionManager which has a TransactionManager reference set"); } getProperties().put(AvailableSettings.JTA_PLATFORM, new ConfigurableJtaPlatform(jtaTm.getTransactionManager(), jtaTm.getUserTransaction())); } } else if (jtaTransactionManager instanceof TransactionManager) { getProperties().put(AvailableSettings.JTA_PLATFORM, new ConfigurableJtaPlatform((TransactionManager) jtaTransactionManager, null)); } else { throw new IllegalArgumentException( "Unknown transaction manager type: " + jtaTransactionManager.getClass().getName()); } getProperties().put(AvailableSettings.TRANSACTION_STRATEGY, new CMTTransactionFactory()); return this; }
From source file:org.everit.osgi.hibernate.adapter.HibernatePersistenceProvider.java
License:Open Source License
protected Map<?, ?> generateExtendedSettings(final Map<?, ?> map) { Map<Object, Object> result = null; if (map == null) { result = new ConcurrentHashMap<Object, Object>(); } else {/*from w w w . jav a 2 s .c o m*/ result = new ConcurrentHashMap<Object, Object>(map); } result.put("javax.persistence.validation.factory", getValidatorFactory()); result.put(AvailableSettings.JTA_CACHE_TM, false); result.put(AvailableSettings.JTA_CACHE_UT, false); OsgiJtaPlatform osgiJtaPlatform = new OsgiJtaPlatform(transactionManagerTracker, userTransactionTracker); osgiJtaPlatform.configure(result); result.put(AvailableSettings.JTA_PLATFORM, osgiJtaPlatform); return result; }
From source file:org.infinispan.test.hibernate.cache.commons.functional.AbstractFunctionalTest.java
License:LGPL
@Override @SuppressWarnings("unchecked") protected void addSettings(Map settings) { super.addSettings(settings); settings.put(Environment.USE_SECOND_LEVEL_CACHE, "true"); settings.put(Environment.GENERATE_STATISTICS, "true"); settings.put(Environment.USE_QUERY_CACHE, String.valueOf(getUseQueryCache())); settings.put(Environment.CACHE_REGION_FACTORY, TestRegionFactoryProvider.load().getRegionFactoryClass().getName()); settings.put(Environment.CACHE_KEYS_FACTORY, SimpleCacheKeysFactory.SHORT_NAME); settings.put(TestRegionFactory.TRANSACTIONAL, useTransactionalCache()); settings.put(TestRegionFactory.CACHE_MODE, cacheMode); settings.put(TestRegionFactory.STATS, stats); settings.put(AvailableSettings.JTA_PLATFORM, jtaPlatformClass.getName()); settings.put(Environment.TRANSACTION_COORDINATOR_STRATEGY, transactionCoordinatorBuilderClass.getName()); if (connectionProviderClass != null) { settings.put(Environment.CONNECTION_PROVIDER, connectionProviderClass.getName()); }/*from w w w .ja v a 2s. c om*/ }
From source file:org.infinispan.test.hibernate.cache.commons.util.CacheTestUtil.java
License:LGPL
@SuppressWarnings("unchecked") public static Map buildBaselineSettings(String regionPrefix, boolean use2ndLevel, boolean useQueries, Class<? extends JtaPlatform> jtaPlatform) { Map settings = new HashMap(); settings.put(AvailableSettings.GENERATE_STATISTICS, "true"); settings.put(AvailableSettings.USE_STRUCTURED_CACHE, "true"); if (jtaPlatform == null || jtaPlatform == NoJtaPlatform.class) { settings.put(Environment.TRANSACTION_COORDINATOR_STRATEGY, JdbcResourceLocalTransactionCoordinatorBuilderImpl.class.getName()); settings.put(AvailableSettings.JTA_PLATFORM, NoJtaPlatform.class); } else {/*from w w w .j a va 2s. co m*/ settings.put(Environment.TRANSACTION_COORDINATOR_STRATEGY, JtaTransactionCoordinatorBuilderImpl.class.getName()); settings.put(AvailableSettings.JTA_PLATFORM, jtaPlatform); } settings.put(AvailableSettings.CACHE_REGION_FACTORY, TestRegionFactoryProvider.load().getRegionFactoryClass()); settings.put(AvailableSettings.CACHE_REGION_PREFIX, regionPrefix); settings.put(AvailableSettings.USE_SECOND_LEVEL_CACHE, String.valueOf(use2ndLevel)); settings.put(AvailableSettings.USE_QUERY_CACHE, String.valueOf(useQueries)); return settings; }
From source file:org.infinispan.test.hibernate.cache.functional.AbstractFunctionalTest.java
License:LGPL
@Override @SuppressWarnings("unchecked") protected void addSettings(Map settings) { super.addSettings(settings); settings.put(Environment.USE_SECOND_LEVEL_CACHE, "true"); settings.put(Environment.GENERATE_STATISTICS, "true"); settings.put(Environment.USE_QUERY_CACHE, String.valueOf(getUseQueryCache())); settings.put(Environment.CACHE_REGION_FACTORY, getRegionFactoryClass().getName()); settings.put(Environment.CACHE_KEYS_FACTORY, SimpleCacheKeysFactory.SHORT_NAME); settings.put(TestInfinispanRegionFactory.TRANSACTIONAL, useTransactionalCache); settings.put(TestInfinispanRegionFactory.CACHE_MODE, cacheMode); if (jtaPlatformClass != null) { settings.put(AvailableSettings.JTA_PLATFORM, jtaPlatformClass.getName()); }/*from w w w.j a va 2 s. c om*/ settings.put(Environment.TRANSACTION_COORDINATOR_STRATEGY, transactionCoordinatorBuilderClass.getName()); if (connectionProviderClass != null) { settings.put(Environment.CONNECTION_PROVIDER, connectionProviderClass.getName()); } }
From source file:org.infinispan.test.hibernate.cache.util.CacheTestUtil.java
License:LGPL
@SuppressWarnings("unchecked") public static Map buildBaselineSettings(String regionPrefix, Class regionFactory, boolean use2ndLevel, boolean useQueries, Class<? extends JtaPlatform> jtaPlatform) { Map settings = new HashMap(); settings.put(AvailableSettings.GENERATE_STATISTICS, "true"); settings.put(AvailableSettings.USE_STRUCTURED_CACHE, "true"); if (jtaPlatform == null) { settings.put(Environment.TRANSACTION_COORDINATOR_STRATEGY, JdbcResourceLocalTransactionCoordinatorBuilderImpl.class.getName()); } else {// w w w. jav a 2 s.co m settings.put(Environment.TRANSACTION_COORDINATOR_STRATEGY, JtaTransactionCoordinatorBuilderImpl.class.getName()); settings.put(AvailableSettings.JTA_PLATFORM, jtaPlatform); } settings.put(AvailableSettings.CACHE_REGION_FACTORY, regionFactory.getName()); settings.put(AvailableSettings.CACHE_REGION_PREFIX, regionPrefix); settings.put(AvailableSettings.USE_SECOND_LEVEL_CACHE, String.valueOf(use2ndLevel)); settings.put(AvailableSettings.USE_QUERY_CACHE, String.valueOf(useQueries)); return settings; }
From source file:org.jboss.additional.testsuite.jdkall.past.jpa.hibernate.secondlevelcache.SFSB.java
License:Open Source License
@TransactionAttribute(TransactionAttributeType.NEVER) public void setupConfig() { // static {// www. java2s .co m try { // prepare the configuration Configuration configuration = new Configuration() .setProperty(AvailableSettings.USE_NEW_ID_GENERATOR_MAPPINGS, "true"); configuration.getProperties().put(AvailableSettings.JTA_PLATFORM, JBossAppServerJtaPlatform.class); configuration.getProperties().put(AvailableSettings.TRANSACTION_COORDINATOR_STRATEGY, "jta"); configuration.setProperty(Environment.HBM2DDL_AUTO, "create-drop"); configuration.setProperty(Environment.DATASOURCE, "java:jboss/datasources/ExampleDS"); // fetch the properties Properties properties = new Properties(); configuration = configuration.configure("hibernate.cfg.xml"); properties.putAll(configuration.getProperties()); Environment.verifyProperties(properties); ConfigurationHelper.resolvePlaceHolders(properties); sessionFactory = configuration.buildSessionFactory(); } catch (Throwable ex) { // Make sure you log the exception, as it might be swallowed ex.printStackTrace(); throw new ExceptionInInitializerError(ex); } }
From source file:org.jboss.as.jpa.hibernate.HibernatePersistenceProviderAdaptor.java
License:Open Source License
@Override public void addProviderProperties(Map properties, PersistenceUnitMetadata pu) { properties.put(Configuration.USE_NEW_ID_GENERATOR_MAPPINGS, "true"); properties.put(org.hibernate.ejb.AvailableSettings.SCANNER, "org.jboss.as.jpa.hibernate.HibernateAnnotationScanner"); properties.put(AvailableSettings.APP_CLASSLOADER, pu.getClassLoader()); properties.put(AvailableSettings.JTA_PLATFORM, new JBossAppServerJtaPlatform()); }
From source file:org.jboss.as.jpa.hibernate4.HibernatePersistenceProviderAdaptor.java
License:Open Source License
@SuppressWarnings("deprecation") @Override// w w w. j a v a 2s . co m public void addProviderProperties(Map properties, PersistenceUnitMetadata pu) { putPropertyIfAbsent(pu, properties, AvailableSettings.JPAQL_STRICT_COMPLIANCE, "true"); // JIPI-24 ignore jpql aliases case putPropertyIfAbsent(pu, properties, Configuration.USE_NEW_ID_GENERATOR_MAPPINGS, "true"); putPropertyIfAbsent(pu, properties, org.hibernate.ejb.AvailableSettings.SCANNER, HibernateArchiveScanner.class.getName()); properties.put(AvailableSettings.APP_CLASSLOADER, pu.getClassLoader()); putPropertyIfAbsent(pu, properties, AvailableSettings.JTA_PLATFORM, new JBossAppServerJtaPlatform(jtaManager)); putPropertyIfAbsent(pu, properties, org.hibernate.ejb.AvailableSettings.ENTITY_MANAGER_FACTORY_NAME, pu.getScopedPersistenceUnitName()); putPropertyIfAbsent(pu, properties, AvailableSettings.SESSION_FACTORY_NAME, pu.getScopedPersistenceUnitName()); if (!pu.getProperties().containsKey(AvailableSettings.SESSION_FACTORY_NAME)) { putPropertyIfAbsent(pu, properties, AvailableSettings.SESSION_FACTORY_NAME_IS_JNDI, Boolean.FALSE); } }