Index: topia2/src/java/org/codelutin/topia/framework/TopiaContextImpl.java diff -u topia2/src/java/org/codelutin/topia/framework/TopiaContextImpl.java:1.11 topia2/src/java/org/codelutin/topia/framework/TopiaContextImpl.java:1.12 --- topia2/src/java/org/codelutin/topia/framework/TopiaContextImpl.java:1.11 Mon Jan 30 14:49:14 2006 +++ topia2/src/java/org/codelutin/topia/framework/TopiaContextImpl.java Mon Jan 30 15:09:36 2006 @@ -23,9 +23,9 @@ * * @author poussin * - * @version $Revision: 1.11 $ + * @version $Revision: 1.12 $ * - * Last update: $Date: 2006/01/30 14:49:14 $ by : $Author: thimel $ + * Last update: $Date: 2006/01/30 15:09:36 $ by : $Author: thimel $ */ package org.codelutin.topia.framework; @@ -800,7 +800,11 @@ } if (entity instanceof TopiaEntityAbstract) { - ((TopiaEntityAbstract) entity).setTopiaContext(this); + TopiaEntityAbstract entityAbstract = (TopiaEntityAbstract) entity; + //On ne rattache l'entit้ เ un contexte que si elle n'en a pas + if (entityAbstract.getTopiaContext() == null) { + entityAbstract.setTopiaContext(this); + } } try { TopiaEntityLoadEvent event = new TopiaEntityLoadEvent(this, entity); @@ -808,9 +812,6 @@ for(Iterator l=getLoadListeners().iterator(entity.getClass()); l.hasNext();) { l.next().entityLoaded(event); } - if (getParentContext() != null) { - getParentContext().fireOnLoaded(entityClass, id, entity); - } } catch (Exception eee) { if (log.isWarnEnabled()) { log.error("Can't fire event loaded for entity: " + entity, eee); @@ -831,9 +832,6 @@ for(Iterator l=getListeners().iterator(entity.getClass()); l.hasNext();) { l.next().entityCreated(event); } - if (getParentContext() != null) { - getParentContext().fireOnCreated(entityClass, id, entity); - } } catch (Exception eee) { if (log.isWarnEnabled()) { log.warn("Can't fire event created for entity: " + entity, eee); @@ -854,9 +852,6 @@ for(Iterator l=getListeners().iterator(entity.getClass()); l.hasNext();) { l.next().entityUpdated(event); } - if (getParentContext() != null) { - getParentContext().fireOnUpdated(entityClass, id, entity); - } } catch (Exception eee) { if (log.isWarnEnabled()) { log.warn("Can't fire event updated for entity: " + entity, eee); @@ -877,9 +872,6 @@ for(Iterator l=getListeners().iterator(entity.getClass()); l.hasNext();) { l.next().entityDeleted(event); } - if (getParentContext() != null) { - getParentContext().fireOnDeleted(entityClass, id, entity); - } } catch (Exception eee) { if (log.isWarnEnabled()) { log.warn("Can't fire event deleted for entity: " + entity, eee); @@ -921,9 +913,6 @@ for(Iterator l=getTransactionListeners().iterator(); l.hasNext();) { l.next().rollback(transactionEvents); } - if (getParentContext() != null) { - getParentContext().fireOnRollbacked(); - } } catch (Exception eee) { if (log.isWarnEnabled()) { log.warn("Can't fire event rollback for entity", eee);