5 Replies Latest reply on Apr 6, 2007 11:46 AM by christian.bauer

    How to strip request parameters for page reloads

      Sorry about the title, but its hard to capture in a sentence what I'm struggling with.

      I have a simple DataModel display page, fed by a manager bean that maintains the list, as shown in the Seam tutorial.

      It all works great but for one small gotcha: What happens if someone reloads the page after an operation like a delete?

      For example say I have 3 items in my list. I use a s:link to trigger deletion operations. Say I click delete on the second item. Seam will pass a parameter string that includes "myList[1]". That works, but--after the page is redrawn if the user hits referesh the deletion operation will happen again (because the myList[1] is still part of the query string) on a list item the user probably didn't intend to delete! Worse if they accidentally run the list index beyond the bounds of the backing list they get a messy-bad-error-exception-thingy(tm).

      My initial attempt was to have the s:link view attribute take them to a dummy "bounce" page never intended to be displayed. The bounce.page.xml would have an always-true nav rule to redirect them back to my main page. So far I haven't been able to get this working.

      Any thoughts/better approaches?

      Thanks,
      Greg