Reputation: 1914
I want to use two data sources at same time and use them based on the condition. Can I add multiple data sources in persistence.xml like:
<jta-data-source>gov/v3/jdbc/dataSource1</jta-data-source>
<jta-data-source>gov/v3/jdbc/dataSource2</jta-data-source>
Please send your suggestion.
Note: Application server is weblogic 10.3
Upvotes: 3
Views: 8179
Reputation: 18379
Based on what "condition"?
EclipseLink does support data partitioning, not sure if this is what you are looking for.
http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Advanced_JPA_Development/Data_Partitioning
Upvotes: 1
Reputation: 30025
You can configure multiple datasources in your persistence.xml this way:
<persistence ...>
<persistence-unit name="persistence-unit-1">
<jta-data-source>jdbc/persistence-unit-1</jta-data-source>
...
</persistence-unit>
<persistence-unit name="persistence-unit-2">
<jta-data-source>jdbc/persistence-unit-2</jta-data-source>
...
</persistence-unit>
</persistence>
Use these datasources from your application as follows:
EntityManagerFactory emf = Persistence.createEntityManagerFactory("persistence-unit-1");
EntityManager em = emf.createEntityManager();
Upvotes: 9