[prev in list] [next in list] [prev in thread] [next in thread] 

List:       tapestry-user
Subject:    Re: Bread Crumb navigation in Tapestry [ndc] [auf Viren geprueft]
From:       Shing Hing Man <matmsh () yahoo ! com>
Date:       2005-04-29 13:07:26
Message-ID: 20050429130726.21638.qmail () web52406 ! mail ! yahoo ! com
[Download RAW message or body]

Jon,
   Yes. Somehow you need to retrieve 
the track info held in the Hidden components when
a user jump to another page  by submission of a form,
,PageLink  or Directlink . (Note that the 
above PageLink and Directlink are not part of the
trail links.) 
If you go to another page via form submission, then
there is no problem retrieving track info from the
hidden components (beacuse you always have rewind in a
form submission.)
However if go to another page by clicking a PageLink (
which is not part of the trail links), then there is
no rewind and Tapestry does not automatically retrieve

the hidden components for you.
A way out might be to write a custom PageLink to
retrieve the trail info in the hidden components.


Shing 







Because clicking a PageLink or DirectDirect does not 
generate a rewind

Shing  



 --- Jonathan O'Connor <Jonathan.O'Connor@xcom.de>
wrote: 
> Shing,
> So, this means that I must have these hidden pages
> in each form on my 
> page. I guess I can create my own
> FormWithBreadCrumbs component, and use 
> that everywhere. Actually, that doesn't sound too
> bad.
> 
> If I'm successful, I'll package it into a library.
> Ciao,
> Jonathan O'Connor
> XCOM Dublin
> 
> 
> 
> Shing Hing Man <matmsh@yahoo.com> 
> 28/04/2005 14:59
> 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 [ndc] [auf
> Viren geprueft]
> 
> 
> 
> 
> 
> 
> The following is only a thought. I might be talking
> rubbish.
> 
> Instead of using visit object to store the trail,
> output 
> the trail info in hidden fields.
> 
> Also use Directlink for each link in your trail.
> For each Directlink, store the page names 
> that lead to that link
> in the Directlink component parameter parameters.
> 
> When a user click a link in the trail,
> we retrieve the page names  leading up to the
> clicked
> link in the 
> DirectLink listener method and this becomes our
> current trail.
> 
> 
> When a user click a link outside the trail, we 
> get the current trail from the hidden fields. Note
> that 
> if clicking a link does not result in a rewind, we
> are
> not going to get our hands on the hidden fields. 
> 
>  
> Shing
> 
> 
> --- Jonathan O'Connor <Jonathan.OConnor@xcom.de>
> wrote:
> > 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
> > 
> > 
> > 
> > 
> >              Michael Henderson 
> > 
> >              <mhinca@mac.com> 
> > 
> > 
> >                    To 
> >              01/11/2004 04:30          Tapestry
> > users 
> > 
> > <tapestry-user@jakarta.apache.org> 
> > 
> >                    cc 
> >              Please respond to 
> > 
> >              "Tapestry users" 
> >               Subject 
> >              <tapestry-user@ja         Re: Bread
> > Crumb navigation in 
> >              karta.apache.org>         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:
> 
=== message truncated === 

Home page :
  http://uk.geocities.com/matmsh/index.html

Send instant messages to your online friends http://uk.messenger.yahoo.com 

---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic