The non tapestry SOP on this is to make the "crumb" links very
descriptive (basically make each trail link an independent, complete
navigation link). That way even if the user presses back 15 times, lets his
session time out, and then comes back the next day, his breadcrumbs will
still work (assuming the redirect to log him back in succeeds).

 

            The more I work with tapstry, the less comfortable I am trusting
the rewind process and/or the users not to push back. So I'm ending up
rolling a lot of my pre tapestry techniques in to make a "pseudo-stateless"
environment where basically the only thing I have stuffed in the visit
object is the User's login state. 

 

            As an aside,  I actually worked for a company that shipped an
application once that couldn't handle the back button. Two words: NEVER
AGAIN :-). You haven't seen your product crash and burn in a usability lab
until you've tried to convince people not to use their back button on a web
browser.

 

            --- Pat

 

  _____  

From: Jonathan O'Connor [mailto:[EMAIL PROTECTED] 
Sent: Thursday, April 28, 2005 5:58 AM
To: Tapestry users
Subject: Bread Crumb navigation in Tapestry [ndc] [auf Viren geprueft]

 

Folks,
I am trying to fix a bug with our bread crumb navigation links.

I keep a stack of pages (pageCommands really) in the Visit. When I move to a
new page, I push the page on to the stack. The stack is displayed in the
Border, and clicking the links, unwinds the stack and displays the correct
page.

So far so good. Unfortunately, we have the blasted Back button to worry
about. If the user uses the back button, unfortunately, I can't rewind the
stack. Sure, if they click on a bread crumb link now, everything is OK, but
if they choose another link, then the stack will have too many pages in it.

It seems that both Seaside and Wicket support simple handling of back button
and refresh. I also found some discussions on the tapestry-dev list from 2
years ago about implementing transitions. Has there been any progress on
this? Does anybody have a solution for Tapestry 3.0.3?
Ciao,
Jonathan O'Connor
XCOM Dublin
Inactive hide details for Michael Henderson <[EMAIL PROTECTED]>Michael
Henderson <[EMAIL PROTECTED]>




Michael Henderson <[EMAIL PROTECTED]> 

01/11/2004 04:30 


Please respond to
"Tapestry users" <tapestry-user@jakarta.apache.org>




To


Tapestry users <tapestry-user@jakarta.apache.org>




cc






Subject


Re: Bread Crumb navigation in Tapestry [auf Viren geprueft]

 







Begin forwarded message:

> You can you a stack based history object to track the users'
> activities. Then build a custom componet to show it on the screen.

You run the risk here, if the visitor uses the back button, that the 
client side gets out of sync with the server side stack. Try using a 
list of ExternalLinks with a parameter to indicate the breadcrumb 
element target, or roll your own EngineService Just make the links work 
without depending on server side state and remember to make the code 
smart enough to roll back the 'stack' if the page has a link somewhere 
else that takes the user to  a location already in the breadcrumb 
trail.

I've  always found this to be  a harder problem than it first appears 
in a component-based model where URLs contain not 'location' 
information but 'framework' information (invoke this listener method).

The simplest solution is to give each page it's own 'breadcrumb' trail 
which reflects it's location in an information/navigation hierarchy so 
the trail is the same regardless of the path the user took to get to 
it. This works for most cases. You still need to do the work outlined 
above to get a complete solution.


Best of Luck,

Mike


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



Reply via email to