I can't, Evan, since I've already commited the transaction. The code in the session bean goes like this:
UserTransaction ut = null; try { BMPDataBean dataBean = getHome().findByPrimaryKey( pk ); ut = m_context.getUserTransaction(); ut.begin(); dataBean.setXXX ( xxx ); dataBean.setYYY ( yyy ); ut.commit(); } catch (EJBException e) { e.printStackTrace(); } catch (NamingException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } The thing is when the session bean commits, the container executes ejbLoad - wich fails when the version is incorrect. Throwing EJBException doesn't prevent the commit. I need the commit to fail under some circumstances, I jus't don't find the way to make it fail. PS ----- Original Message ----- From: "Evan Ireland" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, January 14, 2004 8:00 PM Subject: Re: BMP/T, optimistic locking and trying to revert a commit > Throw an EJBException from EJBStore. Catch the exception in the SB > and call rollback, then retry. > > > -----Original Message----- > > From: A mailing list for Enterprise JavaBeans development > > [mailto:[EMAIL PROTECTED] Behalf Of Pablo Schor > > Sent: Thursday, 15 January 2004 11:35 a.m. > > To: [EMAIL PROTECTED] > > Subject: BMP/T, optimistic locking and trying to revert a commit > > > > > > I have the following situation: Jboss 3.2.1, one statless > > session bean, one BMP entity beans. The session bean updates the > > table through _BMT_, but the ejbStore has a "version=v" in the > > where clause and if it fails (no rows updated), it has to throw > > an exception to the session bean. > > > > > > The container executes the ejbStore() method when the session > > bean issues a commit, but if the version is incorrect, the BMP > > throws an exception - trying to rollback since the update clause > > didn't update the required row. > > > > > > Questions: > > > > 1. What Exception should the BMP throw? Can a BMP throw an > > application specific exception? if not, how can the BMP notify > > the session bean the fact no rows were updated? > > 2. In any case, can the commit be reverted? > > > > > > Thanks for any info, > > PS > > > > > > ================================================================== > > ========= > > To unsubscribe, send email to [EMAIL PROTECTED] and include > > in the body > > of the message "signoff EJB-INTEREST". For general help, send email to > > [EMAIL PROTECTED] and include in the body of the message "help". > > > > > > =========================================================================== > To unsubscribe, send email to [EMAIL PROTECTED] and include in the body > of the message "signoff EJB-INTEREST". For general help, send email to > [EMAIL PROTECTED] and include in the body of the message "help". =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff EJB-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".