Hi ! Im using s:link with @DataModelSelection to delete an entity. <a jsfc="s:link" value="#{messages['action.delete']}" action="#{labelFilter.delete}"/> If i have opened two pages with the same content and simulate simultan user-action 'delete' on the same entity, i got an OptimisticLockException on flush. @TransactionAttribute (TransactionAttributeType.REQUIRES_NEW) | public void delete(EmonitorEntity entity) { | try { | this.entityManager.remove(entity); | this.entityManager.flush(); | } catch (OptimisticLockException ole) { | if (sessionContext.getRollbackOnly()) | logger.info("rollbackonly", ole); | } | } The transaction (the new one) should have been rolled back after processing this method (because i'm using CMT which is default). This seems to be done correctly. Afterwards i'm raising an event to a PAGE-scoped component to refresh it's contents. But the refresh does not work because the transaction has been set to 'rollbackonly'. public Long size(Class<?> clazz, String[] properties, Object[] values) { | Query q = getSizeQuery (clazz, properties, values); | | if (sessionContext.getRollbackOnly()) | logger.fatal("rollbackonly", new AssertionError()); | | try { | return ((Number) q.getSingleResult()).longValue(); | } catch (RuntimeException rte) { | throw rte; | } | }
This all is processed in the RENDER_RESPONSE_PHASE of jsf. | * Does seam work correctly with @TransactionAttribute ? | * I've spawn a new transaction for the delete-method, why does this effect the RENDER_RESPONSE-PHASE - transaction of seam? | | Thanks for your help! Hints are welcome ... | | Using : | | | * seam 2.0.0.BETA1 from cvs | | * hibernate 3 | | * jboss 4.2.0.GA | | | | Please let me know, if you need more informations. View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4079079#4079079 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4079079 _______________________________________________ jboss-user mailing list jboss-user@lists.jboss.org https://lists.jboss.org/mailman/listinfo/jboss-user