You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by bėgantis debesis <de...@gmail.com> on 2006/06/13 10:50:59 UTC

honeycomb does not commit on redirect

Hi,

I changed my listener method that saves information to database to perform *
redirect-after-post*. My listener method now returns an instance of  ILink
(I  changed it because of refresh-after-submit problem).  And honeycomb
stopped commiting  the database changes.

It is because the TransactionDirectService on honeycomb catches the
RedirectException and rolls back the transaction:

        try {
            super.triggerComponent(cycle, direct, parameters);
            svc.commit();
        } catch ( StaleObjectStateException e ){
            svc.rollback();
            cycle.activate("StaleObject");
        } catch ( RuntimeException e ) {
            svc.rollback();
            throw e;
        }**

Is it a bug or maybe I missed something? How do i fix this, maybe commit on
catch(RedirectException)?

Thanks,
Valdemaras Repšys