Hi,

I looked everywhere for usage of request scope variables, but found nothing
(maybe I'm impatient a bit :)...
Is it really that unrealistic to have two components in a page, one (A)
having an action link eventhandler where it would set some attribute for the
request only (not the session!) and then component B could render itself
according to the attribute set by component A?

I think it should be a piece of cake :)

thx
Janos

2008/4/30 Filip S. Adamsen <[EMAIL PROTECTED]>:

> Nope, you're exactly right.
>
> -Filip
>
> Blower, Andy skrev:
>
>  This is not what I understood 'perthread' scope to be. I thought that it
> > meant that each thread using a service gets its own instance of the service
> > to use, even though that instance may not be the same as any previous
> > instance it used. In other words, nothing to do with user sessions, it's
> > just for services that are not thread safe and cannot be singletons.
> >
> > Have I got the wrong end of the stick here?
> >
> >  -----Original Message-----
> > > From: Andy Huhn [mailto:[EMAIL PROTECTED]
> > > Sent: 29 April 2008 17:34
> > > To: Tapestry users
> > > Subject: Re: page activation + components
> > >
> > >
> > > Hello,
> > >
> > > You can define the scope of each service...you can set that particular
> > > service to be tied to only one session.
> > >
> > > See http://tapestry.apache.org/tapestry5/tapestry-ioc/service.html,
> > > and
> > > search for "perthread".
> > >
> > > Thanks,
> > > Andy
> > >
> > > On Tue, 29 Apr 2008 18:02:52 +0200, "János Jarecsni"
> > > <[EMAIL PROTECTED]> wrote:
> > >
> > > > Hi there,
> > > >
> > > > the service approach (as I expected) is session-agnostic (and is
> > > > page-independent so concurrent users would interfere badly),
> > > >
> > > therefore is
> > >
> > > > not ok.
> > > >
> > > > I will now try the Environment approach... if that is session-aware
> > > >
> > > :)
> > >
> > > > thx again
> > > > janos
> > > >
> > > > 2008/4/29 János Jarecsni <[EMAIL PROTECTED]>:
> > > >
> > > >  Hi Chris,
> > > > >
> > > > > even so you could help :) I want this kind of generic way of
> > > > > passing
> > > > > around information (component to component communication :)) so
> > > > > I'll
> > > > >
> > > > look
> > > >
> > > > > for the solutions Kristian and you outlined.
> > > > >
> > > > > thanks!
> > > > >
> > > > > cheers,
> > > > > janos
> > > > >
> > > > > 2008/4/29 Chris Lewis <[EMAIL PROTECTED]>:
> > > > >
> > > > >  Janos,
> > > > > >
> > > > > > Without code or a description of your actual goal, I'm finding
> > > > > >
> > > > > your
> > >
> > > > situation too hypothetical to really digest. The one thing I can
> > > > > >
> > > > > point
> > >
> > > > out is what you said about wanting a component to set a property
> > > > > >
> > > > > in
> > >
> > > > the
> > > >
> > > > > page. If you want to do that, then you have to know the class of
> > > > > >
> > > > > the
> > >
> > > > page and so injecting a page would make sense. Of course that
> > > > > >
> > > > > means
> > >
> > > > tightly coupling a component to a page, which to me doesn't make
> > > > > >
> > > > > sense.
> > > >
> > > > > If you simply need a generic way of passing data between pages and
> > > > > > components, consider using a service that provides an untyped
> > > > > > list
> > > > > >
> > > > > or
> > >
> > > > putting something in the environment as Kristian suggested. I'm
> > > > > >
> > > > > sorry
> > >
> > > > I
> > > >
> > > > > can't be more helpful but as I said I'm not clear on what you're
> > > > > >
> > > > > really
> > > >
> > > > > trying to do.
> > > > > >
> > > > > > good luck
> > > > > > chris
> > > > > >
> > > > > > János Jarecsni wrote:
> > > > > >
> > > > > > > Hi Chris,
> > > > > > >
> > > > > > > I thought of pages as "contexts" for the components embedded
> > > > > > >
> > > > > > within
> > >
> > > > them.
> > > > > >
> > > > > > > So, in one event handler of a component I would like to set
> > > > > > > some
> > > > > > >
> > > > > > property or
> > > > > >
> > > > > > > another (in the page object), and the other components in the
> > > > > > >
> > > > > > page,
> > >
> > > > which
> > > > > >
> > > > > > > are also able to access this property may change their
> > > > > > >
> > > > > > appearance
> > >
> > > > (say, the
> > > > > >
> > > > > > > .TML would test the property). Maybe I'm on a wrong track,
> > > > > > >
> > > > > > please
> > >
> > > > let
> > > >
> > > > > me
> > > > > >
> > > > > > > know :)
> > > > > > >
> > > > > > > thx
> > > > > > > Cheers,
> > > > > > > janos
> > > > > > >
> > > > > > > 2008/4/29 Chris Lewis <[EMAIL PROTECTED]>:
> > > > > > >
> > > > > > >
> > > > > > >  Janos,
> > > > > > > >
> > > > > > > > I'm having a hard time understanding a case that a component
> > > > > > > >
> > > > > > > should
> > >
> > > > know
> > > > > >
> > > > > > > in which page it is embedded, so my suggestion probably wasn't
> > > > > > > >
> > > > > > > a
> > >
> > > > good
> > > >
> > > > > one. Activation contexts aren't meant for components but for
> > > > > > > >
> > > > > > > pages
> > >
> > > > -
> > > >
> > > > > you
> > > > > >
> > > > > > > should be using component parameters to configure them, and if
> > > > > > > >
> > > > > > > it's
> > >
> > > > a
> > > >
> > > > > more sophisticated component, probably a service.
> > > > > > > >
> > > > > > > > chris
> > > > > > > >
> > > > > > > > János Jarecsni wrote:
> > > > > > > >
> > > > > > > >  and how a component can get to know the page in which it is
> > > > > > > > >
> > > > > > > > included? I
> > > > > >
> > > > > > > mean, I can't @InjectPage, as the component will be included
> > > > > > > > >
> > > > > > > > in
> > >
> > > > many
> > > >
> > > > > kinds
> > > > > > > >
> > > > > > > >  of pages.
> > > > > > > > >
> > > > > > > > > @Kristian: thx for the many ways :) I'll try these, hope
> > > > > > > > > that
> > > > > > > > >
> > > > > > > > the
> > >
> > > > @Environmental stuff is scalable (I'm trying to bypass session
> > > > > > > > >
> > > > > > > > creation
> > > > > >
> > > > > > > as
> > > > > > > >
> > > > > > > >  much as possible)
> > > > > > > > >
> > > > > > > > > Is there a doc on the various annotations available?
> > > > > > > > >
> > > > > > > > > @Michael:
> > > > > > > > > Could you include a tiny bit of example? THX!
> > > > > > > > >
> > > > > > > > > Thx to you all
> > > > > > > > > cheers
> > > > > > > > > janos
> > > > > > > > >
> > > > > > > > > 2008/4/29 Chris Lewis <[EMAIL PROTECTED]>:
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >  5) @InjectPage the page and call the getter
> > > > > > > > > >
> > > > > > > > > > Kristian Marinkovic wrote:
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >  hi janos,
> > > > > > > > > > >
> > > > > > > > > > > there are several possibilities:
> > > > > > > > > > >
> > > > > > > > > > > 1) declare a component parameter and pass in the
> > > > > > > > > > > variable
> > > > > > > > > > >
> > > > > > > > > > > 2) put it in a ASO and inject the ASO in all your
> > > > > > > > > > > components
> > > > > > > > > > >
> > > > > > > > > > (using
> > > > > >
> > > > > > > @ApplicationState)
> > > > > > > > > > > the drawback is that any other page or component will
> > > > > > > > > > > be
> > > > > > > > > > >
> > > > > > > > > > able to
> > >
> > > > access
> > > > > > > >
> > > > > > > >  the ASO
> > > > > > > > > > >
> > > > > > > > > > > 3) put it into the Environment and read it whereever
> > > > > > > > > > > you
> > > > > > > > > > >
> > > > > > > > > > need it
> > >
> > > > in
> > > > > >
> > > > > > > your
> > > > > > > >
> > > > > > > >  nested components.
> > > > > > > > > > > be careful when you put your object in your
> > > > > > > > > > > environment. if
> > > > > > > > > > >
> > > > > > > > > > you
> > >
> > > > put it
> > > > > >
> > > > > > >
> > > > > > > > > > >  in
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >  during the action
> > > > > > > > > > > request it will not be able in the render request
> > > > > > > > > > > (because
> > > > > > > > > > >
> > > > > > > > > > of
> > >
> > > > the
> > > >
> > > > > page
> > > > > >
> > > > > > > redirect).
> > > > > > > > > > >
> > > > > > > > > > > page:
> > > > > > > > > > >
> > > > > > > > > > > @Inject Environment env;
> > > > > > > > > > >
> > > > > > > > > > > @Persist("flash") whateverclass w;
> > > > > > > > > > >
> > > > > > > > > > > onActivate(w) {  this.w= w }
> > > > > > > > > > >
> > > > > > > > > > > setupRender() { env.push(whateverclass.class,w);}
> > > > > > > > > > >
> > > > > > > > > > > components:
> > > > > > > > > > >
> > > > > > > > > > > @Environmental Whateverclass var;
> > > > > > > > > > >
> > > > > > > > > > > 4) define a service that can take this variable (and
> > > > > > > > > > > saves
> > > > > > > > > > >
> > > > > > > > > > it
> > >
> > > >
> > > > > > > > > > >  appropriatly
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >  so it is not
> > > > > > > > > > > lost on a redirect:)) and inject your service in the
> > > > > > > > > > >
> > > > > > > > > > components
> > >
> > > > where
> > > > > >
> > > > > > > needed
> > > > > > > > > > > to retrieve the value.
> > > > > > > > > > >
> > > > > > > > > > > maybe there are some more possibilities :)
> > > > > > > > > > >
> > > > > > > > > > > g,
> > > > > > > > > > > kris
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > > "János Jarecsni" <[EMAIL PROTECTED]>
> > > > > > > > > > > 29.04.2008 08:15
> > > > > > > > > > > Bitte antworten an
> > > > > > > > > > > "Tapestry users" <users@tapestry.apache.org>
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > > An
> > > > > > > > > > > "Tapestry users" <users@tapestry.apache.org>
> > > > > > > > > > > Kopie
> > > > > > > > > > >
> > > > > > > > > > > Thema
> > > > > > > > > > > page activation + components
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > > Hi there,
> > > > > > > > > > >
> > > > > > > > > > > I have an activatable page, in its onActivate(String
> > > > > > > > > > > param)
> > > > > > > > > > >
> > > > > > > > > > method
> > > >
> > > > > I
> > > > > >
> > > > > > >
> > > > > > > > > > >  save
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >  the param to a normal instance variable of the page
> > > > > > > > > > > class
> > > > > > > > > > >
> > > > > > > > > > (no
> > >
> > > > persistence!).
> > > > > > > > > > > How can any component embedded within this page access
> > > > > > > > > > > this
> > > > > > > > > > >
> > > > > > > > > > variable?
> > > > > >
> > > > > > > the page class:
> > > > > > > > > > >
> > > > > > > > > > > //...
> > > > > > > > > > > private String param;
> > > > > > > > > > >
> > > > > > > > > > > public void onActivate(String param) {
> > > > > > > > > > >   this.param = param;
> > > > > > > > > > > }
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > > public String getParam() {...}
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > > Thx in advance!
> > > > > > > > > > > Janos
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >  --
> > > > > > > > > > http://thegodcode.net
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > ------------------------------------------------------------------
> > > > > >
> > > > > ---
> > >
> > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > > > > > > > For additional commands, e-mail: users-
> > > > > > > > > >
> > > > > > > > > [EMAIL PROTECTED]
> > >
> > > >
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >  --
> > > > > > > > http://thegodcode.net
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > ---------------------------------------------------------------------
> > > >
> > > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > > > > > For additional commands, e-mail:
> > > > > > > > [EMAIL PROTECTED]
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >  --
> > > > > > http://thegodcode.net
> > > > > >
> > > > > >
> > > > > >
> > > > > > ------------------------------------------------------------------
> > > > > >
> > > > > ---
> > >
> > > > 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]
> > >
> >
> >
> ---------------------------------------------------------------------
>
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Reply via email to