diff options
Diffstat (limited to 'src/beans/UserManager.java')
| -rw-r--r-- | src/beans/UserManager.java | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/beans/UserManager.java b/src/beans/UserManager.java index 190926b..36fd807 100644 --- a/src/beans/UserManager.java +++ b/src/beans/UserManager.java @@ -16,11 +16,10 @@ import java.util.List; import javax.faces.bean.ManagedBean; import javax.faces.bean.SessionScoped; import javax.persistence.EntityManager; -import javax.persistence.EntityManagerFactory; import javax.persistence.EntityTransaction; -import javax.persistence.Persistence; import javax.persistence.Query; +import jpa.EntityManagerFactorySingleton; import jpa.User; @ManagedBean(name = "UserManager") @@ -43,9 +42,8 @@ public class UserManager && current.getPassword() != null && current.getPassword().length() > 0) { - EntityManagerFactory factory = Persistence - .createEntityManagerFactory("catalog"); - EntityManager manager = factory.createEntityManager(); + EntityManager manager = EntityManagerFactorySingleton.getInstance() + .getEntityManagerFactory().createEntityManager(); Query query = manager.createQuery( "SELECT u FROM User u where u.username = :username and u.password = :password"); query.setParameter("username", current.getUsername()); @@ -58,6 +56,8 @@ public class UserManager current = (User) results.get(0); outcome = "success"; } + + manager.close(); } // System.out.println(outcome); return outcome; @@ -97,9 +97,8 @@ public class UserManager public User getCurrent() { - EntityManagerFactory factory = Persistence - .createEntityManagerFactory("catalog"); - EntityManager manager = factory.createEntityManager(); + EntityManager manager = EntityManagerFactorySingleton.getInstance() + .getEntityManagerFactory().createEntityManager(); EntityTransaction tx = manager.getTransaction(); tx.begin(); @@ -115,6 +114,8 @@ public class UserManager tx.rollback(); } + manager.close(); + return current; } } |
