Blindage en cas d'incohérence de la bdd

This commit is contained in:
2008-02-25 23:46:29 +00:00
parent 5b6de541cc
commit 7d94c4d0e1

View File

@@ -11,6 +11,7 @@ import javax.ejb.TransactionManagement;
import javax.ejb.TransactionManagementType; import javax.ejb.TransactionManagementType;
import javax.persistence.EntityManager; import javax.persistence.EntityManager;
import javax.persistence.NoResultException; import javax.persistence.NoResultException;
import javax.persistence.NonUniqueResultException;
import javax.persistence.PersistenceContext; import javax.persistence.PersistenceContext;
import javax.persistence.Query; import javax.persistence.Query;
import javax.transaction.UserTransaction; import javax.transaction.UserTransaction;
@@ -115,12 +116,14 @@ public class UserManagerBean implements IUserManager{
} }
public User getByEmail(String email){ public User getByEmail(String email){
Query query = em.createQuery("from User where email=?");
query.setParameter(1, email);
try { try {
Query query = em.createQuery("from User where email=?");
query.setParameter(1, email);
return (User) query.getSingleResult(); return (User) query.getSingleResult();
} catch (NoResultException e) { } catch (NoResultException e) {
return null; return null;
} catch (NonUniqueResultException e){
return (User) query.getResultList().get(0);
} }
} }