"[EMAIL PROTECTED]" wrote : There is one problem with performing validation 
during the action phase: if you are using an extended persistence context, you 
would prefer to do validation before applying values onto the model object. But 
by the time we get to the action method, the values have already been applied. 
It is then difficult to roll back the change to prevent them being written to 
the database.
  | 
  | However, there is a solution: if you use an extended persistence context 
with manual flushing, you are fine. There is better support for this in CVS.
Here's another way, which works already now without having to wait for Seam 1.1 
or using the CVS version;).


  | 
  | import javax.ejb.SessionContext;
  | 
  | @Resource
  | SessionContext ejbCtx;
  | 
  | public String actionMethod() {
  | ...
  |     if (validationFailed)
  |         ejbCtx.setRollbackOnly();
  | ...
  | }

By the way: To prevent the Extended Persistence Context from auto-flushing 
where you maybe do not expect it, annotate your class with 
@TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED) so that no 
storing will be performed. And to make your save-method work again, annotate it 
with @TransactionAttribute(TransactionAttributeType.REQUIRED) 

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3970438#3970438

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3970438
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to