how i have handled this so far:

if load fails it throws EntityNotFoundException, in
requestcycle.onruntimeexception() i check if this is in the stack, and
if it is i redirect the user to "object you are working on has been
deleted by another user" error page.

-igor


On Feb 1, 2008 8:24 AM, Sam Barnum <[EMAIL PROTECTED]> wrote:
> Good explanation, I wasn't aware that was how it worked.  Time to
> switch all my edit pages to use detachable models!
>
> One more question on this topic (changing the subject of the thread)
>
> Consider the scenario:
>
> * Your edit page uses a detachable model to hold your business object.
> * The user edits an object succesfully.
> * On a later page, the user deletes the object.
> * Then uses the back button to navigate back to the edit page, and
> hits reload, or tries saving the object again.
>
> The detachable model will fire, and will fail to load the object from
> the DB.  Depending on how your DAO is implemented, this will either
> return null or throw an exception.  Do you have a recommendation on
> how to handle this scenario?  Would you just check for null/catch the
> exception and do a redirect to an error message page?
>
> Thanks!
>
> On Jan 31, 2008, at 7:23 PM, Nick Heudecker wrote:
>
> > Answer inline.
> >
> > On Jan 31, 2008 8:42 PM, Sam Barnum <[EMAIL PROTECTED]> wrote:
> >
> >> Question on detachable models:
> >>
> >> You use detachable models in the contact edit page.  It seems like
> >> this would cause your changes to be lost if the edit process takes
> >> more than one request to complete.
> >>
> >> If you use the no-arg constructor, the loadableDetachableModel
> >> creates a new contact at the beginning of every request.  If you
> >> enter a name that's too long, a validation message is displayed. Then
> >> the detach() is called on the model, and a new Contact is loaded on
> >> the next request, erasing your temporary changes.
> >
> >
> > If validation fails, the input isn't copied to the Contact object.
> > The form
> > input is only copied to the Contact object when the form successfully
> > submits.
> >
> >
> >>
> >>
> >> I may well be misunderstanding something, I'm fairly new to this
> >> stuff.  It seems that for edit pages you want a non-detachable model,
> >> which gets serialized to the session.
> >
> >
> > I had the same misconception when I started using  Wicket.
> >
> >
> >>
> >>
> >> Thanks for taking the time to write this article, and thanks in
> >> advance for any clarification on this topic.
> >>
> >> --
> >> Sam Barnum
> >> 360 Works
> >> http://www.360works.com
> >> 415.865.0952
> >>
> >>
> >>
> >> On Jan 28, 2008, at 11:02 AM, Nick Heudecker wrote:
> >>
> >>> It's finally up:
> >>> http://www.theserverside.com/news/thread.tss?thread_id=48234
> >>>
> >>> Thanks to the various reviewers that helped improve both the
> >>> content and
> >>> quality of the article, including Martijn, Eelco, Igor, Gerolf and
> >>> Talios.
> >>>
> >>> --
> >>> Nick Heudecker
> >>> Professional Wicket Training & Consulting
> >>> http://www.systemmobile.com
> >>>
> >>> Eventful - Intelligent Event Management
> >>> http://www.eventfulhq.com
> >>
> >>
> >
> >
> > --
> > Nick Heudecker
> > Professional Wicket Training & Consulting
> > http://www.systemmobile.com
> >
> > Eventful - Intelligent Event Management
> > http://www.eventfulhq.com
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to