Repository: airavata Updated Branches: refs/heads/develop 6a73db2fd -> c62df28df
fixing JPA issue Project: http://git-wip-us.apache.org/repos/asf/airavata/repo Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/c62df28d Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/c62df28d Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/c62df28d Branch: refs/heads/develop Commit: c62df28df01110e738bcdfc72c387e6d3096c8a0 Parents: 6a73db2 Author: scnakandala <[email protected]> Authored: Thu Nov 10 13:06:25 2016 -0500 Committer: scnakandala <[email protected]> Committed: Thu Nov 10 13:06:25 2016 -0500 ---------------------------------------------------------------------- .../sharing/registry/db/utils/JPAUtils.java | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/airavata/blob/c62df28d/modules/sharing-registry/sharing-registry-server/src/main/java/org/apache/airavata/sharing/registry/db/utils/JPAUtils.java ---------------------------------------------------------------------- diff --git a/modules/sharing-registry/sharing-registry-server/src/main/java/org/apache/airavata/sharing/registry/db/utils/JPAUtils.java b/modules/sharing-registry/sharing-registry-server/src/main/java/org/apache/airavata/sharing/registry/db/utils/JPAUtils.java index ee0cce4..b06efba 100644 --- a/modules/sharing-registry/sharing-registry-server/src/main/java/org/apache/airavata/sharing/registry/db/utils/JPAUtils.java +++ b/modules/sharing-registry/sharing-registry-server/src/main/java/org/apache/airavata/sharing/registry/db/utils/JPAUtils.java @@ -58,18 +58,12 @@ public class JPAUtils { private static String jdbcUser; private static String jdbcPassword; - private static final ThreadLocal<EntityManager> threadLocal; - static { - threadLocal = new ThreadLocal<EntityManager>(); - } - - @PersistenceUnit(unitName = PERSISTENCE_UNIT_NAME) protected static EntityManagerFactory factory; @PersistenceContext(unitName = PERSISTENCE_UNIT_NAME) private static EntityManager entityManager; - public static EntityManager getEntityManager() throws SharingRegistryException { + public EntityManager getEntityManager() throws SharingRegistryException { if (factory == null) { String connectionProperties = "DriverClassName=" + readServerProperties(SHARING_REG_JDBC_DRIVER) + "," + "Url=" + readServerProperties(SHARING_REG_JDBC_URL) + "?autoReconnect=true," + @@ -102,16 +96,12 @@ public class JPAUtils { factory = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME, properties); } - entityManager = threadLocal.get(); - if(entityManager == null){ - entityManager = factory.createEntityManager(); - threadLocal.set(entityManager); - } + entityManager = factory.createEntityManager(); return entityManager; } - public static <R> R execute(Committer<EntityManager, R> committer) throws SharingRegistryException { - EntityManager entityManager = JPAUtils.getEntityManager(); + public <R> R execute(Committer<EntityManager, R> committer) throws SharingRegistryException { + EntityManager entityManager = (new JPAUtils()).getEntityManager(); try { entityManager.getTransaction().begin(); R r = committer.commit(entityManager);
