[jboss-jira] [JBoss JIRA] (WFLY-10513) Getting JTA Datasource (Wildfly 13)

David Tierens (JIRA) issues at jboss.org
Wed Jun 6 03:26:00 EDT 2018


David Tierens created WFLY-10513:
------------------------------------

             Summary: Getting JTA Datasource (Wildfly 13)
                 Key: WFLY-10513
                 URL: https://issues.jboss.org/browse/WFLY-10513
             Project: WildFly
          Issue Type: Bug
          Components: CDI / Weld, JPA / Hibernate
    Affects Versions: 13.0.0.Final
            Reporter: David Tierens
            Assignee: Martin Kouba
            Priority: Minor


In Wildfly 12 it ,was possible to get the DataSource via :

 


{code:java}
@ApplicationScoped
public class ExamplePersistenceContextConfiguration {

 

   @PersistenceContext(unitName = "examplePersistenceUnit")

   @Produces
   private EntityManager entityManager;

 

   @Produces
   public DataSource getDataSource() {

  EntityManagerFactory entityManagerFactory = entityManager.getEntityManagerFactory();

  Map<String, Object> properties = entityManagerFactory.getProperties();

   return (DataSource) properties.get("javax.persistence.jtaDataSource");

  }

 

   @Produces
   public SessionFactory getSessionFactory() {

  Session session = entityManager.unwrap(Session.class);

   return session.getSessionFactory();

  }

}

{code}

 

Currently it's returning null in Wildfly 13, however :

  (DataSource) properties.get("hibernate.connection.datasource");

does work (instead of (DataSource) properties.get("javax.persistence.jtaDataSource")
 

Persistence.XML :


{code:xml}
// Some comments here
public String getFoo()
{
    return foo;
}

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
  http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
   version="2.1">

   <!-- HBM files in this module will be loaded automatically -->
   <persistence-unit name="examplePersistenceUnit" transaction-type="JTA">

   <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>

   <jta-data-source>jdbc/ExampleXADataSource</jta-data-source>

   <properties>

   <property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect"/>

   <property name="hibernate.show_sql" value="true"/>

   <property name="hibernate.order_inserts" value="true"/>

   <property name="hibernate.jdbc.wrap_result_sets" value="true"/>

   <property name="hibernate.integration.envers.enabled" value="false"/>

   </properties>

   </persistence-unit>

</persistence>
{code}
 

Is there any way to get it via the properties.get("javax.persistence.jtaDataSource") and not via Hibernate ?

 
Thanks in advance,


David



--
This message was sent by Atlassian JIRA
(v7.5.0#75005)


More information about the jboss-jira mailing list