On Wed, Jan 6, 2010 at 8:31 AM, greekscala <[email protected]> wrote:

> Hello,
>
> I dont have to use SessionVars until now, but in near future.
> But I had the same problem in mind.
>
> Is there not a central place to get the user session with all the
> values stored?
>

In Java-land you can get/put values into the session.  This has all the
disadvantages of SessionVars and more.  First, your keys (the names of your
things) are strewn all over your code, but they are just Strings so if you
change a name, you have to look through all your source code for the same
String to change the key.  This is no different than having the SessionVar
declarations all over your code.  Second, the get/put mechanism is not
type-safe.  You can associate anything with a key and when you pull it out,
you better hope that both the putter and the getter agree on what the type
should be.  On the other hand, SessionVars are type safe.  Third, with the
get/put mechanism, you have to roll your own "is the value set?" logic
(which might be null-based or some other mechanism might be used), where as
with SessionVars, you have the lazy creation logic built right into the
SessionVar.

So, if you'd like to propose a mechanism that somehow centralizes the access
to session-related information and doesn't suffer from the above issues, I'm
all ears.

Thanks,

David


> I think it is ugly to have sessionVars spread all over my code.
>
> with best regards
>
> On 5 Jan., 18:13, Naftoli Gugenheim <[email protected]> wrote:
> > Each SessionVar is distinct. Create one -- it can be global -- and use it
> in both snippets.
> >
> > -------------------------------------
> >
> > michall<[email protected]> wrote:
> >
> > I have two snippets Login and Profile, and I want to read same object
> > stored in session, when I use SessionVar it create two different
> > object:
> >
> > object user extends SessionVar[Box[User]](Empty) // same in two
> > snippets
> >
> > When I set this object in Login.scala :
> >
> >  val usr = User.find(By(User.login,login))
> > user.set(usr)
> >
> > in Profile it's still Empty
> >
> > why?
> >
> > --
> >
> > You received this message because you are subscribed to the Google Groups
> "Lift" group.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to
> [email protected]<liftweb%[email protected]>
> .
> > For more options, visit this group athttp://
> groups.google.com/group/liftweb?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Lift" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<liftweb%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/liftweb?hl=en.
>
>
>
>


-- 
Lift, the simply functional web framework http://liftweb.net
Beginning Scala http://www.apress.com/book/view/1430219890
Follow me: http://twitter.com/dpp
Surf the harmonics
--
You received this message because you are subscribed to the Google Groups "Lift" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to [email protected].
For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.

Reply via email to