Bonjour,
J'ai une classe GenericJpaDAO a:
Si dans mon appli, je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 public class GenericJpaDAO implements IGenericDAO { protected static Log log = LogFactory.getLog(GenericJpaDAO.class); @PersistenceContext(unitName = "myappli.hibernate") EntityManager em; public Object getReference(Class _class, Object _object) { return em.getReference(_class, _object); } public void createObject(Object object) { try { em.persist(object); } catch (LazyInitializationException lie) { em.merge(em.merge(object)); } } }
Je ne tombe jamais dans le catch.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 try { createObject(myObj); } catch (Exception e) { log.error("je passe jamais ici!!"); }
Par exemple, j'essaie de créer un objet dans une table avec la même clé primaire qu'une ligne déjà en base
-->j'ai dans mes logs java.sql.BatchUpdateException: ORA-00001: unique constraint (PREVL.PK_MYTAB) violated
bla, bla, bla
Alors que j'avais bien prévu le cas pour ne rien faire en cas d'échec de création de la ligne.
Merci.
Partager