Bonjour,
je commence à passer une application web standard(jdbc) en hibernate3 et je suis confronté à un problème de dé-synchonisation entre les objets et les articles de la table .
Je mets à jour un attribut d'objet avec le code suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 try { Type typ = TypeDAO.instance.findType(id); typ.setLibTyp(valeur); TypeDAO.instance.saveOrUpdate(typ); } catch (Exception e) { e.getMessage(); }
Or la valeur dépasse la taille du champ Oracle, j'ai donc le message Oracle d'erreur correspondant .
L'objet affiché par l'application est , lui, quand même modifié , la table Oracle non .
code de TypeDAO:
Je pensais que la synchronisation était automatique . A moins que je l'utilise mal ,ce qui est bien possible .
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
20
21
22 public Object saveOrUpdate(Object obj) throws Exception { Session s = HibernateUtil.currentSession(); Transaction tx = null; try { tx = s.beginTransaction(); s.saveOrUpdate(obj); tx.commit(); } catch (Exception e) { if (tx != null) { System.out.println("saveOrUpdate.rollback"); tx.rollback(); } throw e; } return obj; }
Je passe bien sur le rollback, j'ai un message pour le vérifier .
Si quelqu'un a une idée, merci d'avance .
Barny
Partager