[Lift] Re: Dynamic SiteMap

2009-10-12 Thread marius d.
First of all I'm not reinventing anything. I don't think that If LocParam semantic is giving you the hidden functionality as well. User type 2 should not even see the menus for user type 1, not only to not be able to access those locations. The way I see it this functionality should be totally

[Lift] Re: Lift UVP's

2009-10-12 Thread Viktor Klang
I think that focusing on the selling points is a good strategy, people cannot and will not learn the code in the preso, so demonstrating _why_ Lift is a good choice if you value the things that Lift brings to the table, and then start lining up things on the table. On Mon, Oct 12, 2009 at 12:09

[Lift] Re: Dynamic SiteMap

2009-10-12 Thread Jeppe Nejsum Madsen
marius d. marius.dan...@gmail.com writes: First of all I'm not reinventing anything. I don't think that If LocParam semantic is giving you the hidden functionality as well. I haven't checked closely, but the scaladoc seem to indicate that it does. And in my own menu snippets (which is based

[Lift] Re: Dynamic SiteMap

2009-10-12 Thread Jeppe Nejsum Madsen
Dave davidtgoldb...@gmail.com writes: [...] Specifically, since both of my user types extend MegaProtoUser, I end up with loggedIn_? function that tells if some user is logged in, but is confused about which. So if a user of type 1 logs in and I call UserType2.loggedIn_?, it will also

[Lift] Re: Lift UVP's

2009-10-12 Thread Timothy Perrett
Hey Rick, Thanks for your feedback - its often helpful to get an outsiders perspective! Making note about the session granularity is an interesting one - if you had to give a simple message to someone else like yourself who was coming to lift about this, what would you say to them?

[Lift] Re: Lift UVP's

2009-10-12 Thread Timothy Perrett
Completly :-) Thats why i just want to present a strong case of features and get away from code on slides. I might do a few slides showing some code, perhaps for things like template binding or comet. But generally id like to think about features. So, what might you suggest mate? Cheers,

[Lift] Re: Lift UVP's

2009-10-12 Thread Viktor Klang
On Mon, Oct 12, 2009 at 11:06 AM, Timothy Perrett timo...@getintheloop.euwrote: Completly :-) Thats why i just want to present a strong case of features and get away from code on slides. I might do a few slides showing some code, perhaps for things like template binding or comet. But

[Lift] Extend the tables that like the migration in the Rails ?

2009-10-12 Thread Neil.Lv
Hi all, I don't know whether there is a mechanism that like the migration of the Rails in the Liftweb, and how can we extend the table, such as add a column desc into a table users (OR user ?). I add this code in the User model and restart the server, the table don't change anything !

[Lift] Question about the TreeViewDemo in the lift widgets section of the Exploring LIft pdf

2009-10-12 Thread Jim Barrows
I've interpreted the demo as the code below. However, I get this exception when I compile: /snippet/TreeViewDemo.scala:14: error: not found: value JsObj TreeView(example, JsObj(animated-90)) I'm not sure what I'm doing wrong I'd appreciate any help. Here's the code: package

[Lift] Re: Why fields are declared as 'object' with Mapper/Record?

2009-10-12 Thread Oleg G.
I've spent some time and came up with this code: http://github.com/ojow/Random-code/blob/master/Test.scala I think it should allow all the needed stuff, it keeps meaning with the bytes and also: * its reusable/extensible in many directions, no static stuff * i checked generated .class files and

[Lift] Re: Extend the tables that like the migration in the Rails ?

2009-10-12 Thread Peter Robinett
Is User added to Schemefier in Boot.scala? It should look something like: Schemifier.schemify(true, Log.infoF _, User) Peter Robinett On Oct 12, 11:22 am, Neil.Lv anim...@gmail.com wrote: Hi all,    I don't know whether there is a mechanism that like the migration of the Rails in the

[Lift] Re: PayPal Subscriptions

2009-10-12 Thread Ryan Donahue
Just tested with paypal sandbox and it works, thanks. On Oct 11, 5:59 pm, Timothy Perrett timo...@getintheloop.eu wrote: Ryan, I have pushed the code to master so give it a couple of hours and   Hudson should automatically start pulling those changes into 1.1- SNAPSHOT JARs for you.

[Lift] Re: Props file example

2009-10-12 Thread Peter Robinett
It's a simple java.properties file. You should place it in src/main/ resources/props. There is a search order but, off the top of my head, the last two options are the username running the app (e.g. peter.props) and default.props. My peter.props looks like this: db.driver=com.mysql.jdbc.Driver

[Lift] Re: Props file example

2009-10-12 Thread Timothy Perrett
Note that you can also intermix this with runtimes: default.props default.pilot.props Doing something like that can let you automatically load different properties based on the run mode lift is in (production vs dev etc) Your code will still look like: Props.get(some.key) //= Box[String]

[Lift] Re: Props file example

2009-10-12 Thread my_lists
Thanks for the information On Oct 12, 2009, at 3:36 PM, Peter Robinett wrote: It's a simple java.properties file. You should place it in src/main/ resources/props. There is a search order but, off the top of my head, the last two options are the username running the app (e.g. peter.props)

[Lift] Complex primary key

2009-10-12 Thread my_lists
Hello guys, How can I create a mapper with two or more fields as primary key? For instance if we have a table of people with a Long primary key called ID generated by IdPK, and also we have a table of addresses also with a Long primary key called ID generated by IdPK. The idea is to

[Lift] Re: Lift UVP's

2009-10-12 Thread naf g
I would put more emphasis on the benefits of Scala than you implied, mentioning also the value of first class functions and partial functions and how lift ues them. (And maybe that Map is a partial function which can be used e.g. in a DispatchSnippet/StatefulSnippet.)

[Lift] Re: beyond widgets: plugins (modular architecture)

2009-10-12 Thread David Pollak
On Mon, Oct 12, 2009 at 1:31 AM, opyate opy...@gmail.com wrote: Hey guys, I had a look at this thread: http://groups.google.com/group/liftweb/browse_thread/thread/a875258c5cccdf09/f6719565f6550513?lnk=gstq=plugin+modular#f6719565f6550513 I'm about to attempt the same. The base app (BASE)

[Lift] Re: Lift UVP's

2009-10-12 Thread marius d.
Is the audience mostly Java based or from different other fields including FP? I would insist in how Lift leverages functional programming idioms offered by Scala. Personally I believe this gives Lift a pretty unique position. Br's, Marius On Oct 12, 12:37 am, Timothy Perrett

[Lift] Re: Dynamic SiteMap

2009-10-12 Thread David Pollak
To address the specific issue of CondHidden/IfHidden, if a Loc (menu location) fails the If() or Unless() test, it will not be displayed/rendered/visible to the user. So, there's no need for a IfHidden or a CondHidden LocParam. More broadly, SiteMap represents all the pages in your site and the

[Lift] Re: Use lift1.0 or 1.1 or 1.x to create a stable and large site(project) ?

2009-10-12 Thread David Pollak
You have to include -DremoteRepositories=http://scala-tools.org/repo-* snapshots* in the command line. On Sun, Oct 11, 2009 at 7:41 PM, Neil.Lv anim...@gmail.com wrote: I used this command to create my project and was successfully. mvn archetype:generate -U -DarchetypeGroupId=net.liftweb -

[Lift] Re: MappedLong null values

2009-10-12 Thread David Pollak
If you've got a good way to do this, feel encouraged to develop it on a branch. On Sun, Oct 11, 2009 at 8:22 PM, Naftoli Gugenheim naftoli...@gmail.comwrote: It would be nice if there could be a generalized way of specifying optionality for fields.(The first though question is whether the

[Lift] Re: Why fields are declared as 'object' with Mapper/Record?

2009-10-12 Thread Oleg G.
Well i don't think its a lot of complexity. Yes its 4 declarations instead of 1 for each field. But 3 of those are generatable by IDE same way as any Java IDE generates setters and getters. All the rest is spring-style instantiations/injections. And usage is even simplier and readable (i mean

[Lift] Re: Lift UVP's

2009-10-12 Thread David Pollak
Tim, Two things I stress about Lift that tends to resonate well: - Lift abstracts away the HTTP request/response cycle. You as the developer do not need to worry about setting up something to receive form posts, ajax events, or to do the whole Comet stuff. It's plumbing and plumbing

[Lift] Re: Why fields are declared as 'object' with Mapper/Record?

2009-10-12 Thread Oleg G.
On 13 окт, 00:08, naf g naftoli...@gmail.com wrote: Why do you have two classes, Model and Record? What are they and why are they interdependent? I thought about Model being a place for metainformation (like database structure, options/properties etc), or maybe it can be described as global

[Lift] Re: Why fields are declared as 'object' with Mapper/Record?

2009-10-12 Thread Naftoli Gugenheim
So Model represents the database connection? 2009/10/12 Oleg G. ojo...@gmail.com On 13 окт, 00:08, naf g naftoli...@gmail.com wrote: Why do you have two classes, Model and Record? What are they and why are they interdependent? I thought about Model being a place for metainformation (like

[Lift] Re: MappedLong null values

2009-10-12 Thread Naftoli Gugenheim
Not offhand, maybe some discussion will generate an good plan.The easiest and worst way would be to have a marker trait or a flag, and test in each MappedXXX. Obviously not a good idea. What may work is to delegate all the code that makes decisions which depend on optionality to a method in

[Lift] Re: Why fields are declared as 'object' with Mapper/Record?

2009-10-12 Thread David Pollak
On Mon, Oct 12, 2009 at 10:38 AM, Oleg G. ojo...@gmail.com wrote: Well i don't think its a lot of complexity. You asked for feedback, I gave you my opinion. Yes its 4 declarations instead of 1 for each field. But 3 of those are generatable by IDE same way as any Java IDE generates

[Lift] Re: Why fields are declared as 'object' with Mapper/Record?

2009-10-12 Thread Oleg G.
Thanks again for your answers, David. I've got your point and it all looks much more clear to me now. On 13 окт, 01:19, David Pollak feeder.of.the.be...@gmail.com wrote: On Mon, Oct 12, 2009 at 10:38 AM, Oleg G. ojo...@gmail.com wrote: Well i don't think its a lot of complexity. You asked

[Lift] Re: Debug cookies

2009-10-12 Thread Ross Mellgren
I usually use FireBug or Safari Web Inspector to look at the Set- Cookie / Cookie headers going back and forth, or use the browser's built in cookie index (usually buried in preferences). You could also use something like Wireshark or tcpdump to watch the headers go by if you're using a

[Lift] Re: Debug cookies

2009-10-12 Thread Naftoli Gugenheim
Firecookie (a Firebug extension) says the cookie's Expires is Session. When I log in Firebug's Net panel shows the following response header (I changed the cookie name): Set-Cookie mycookiename=Z0GZIXFRBQMVTOITYSICI1XZN23ROYLN My code in Boot looks like this:     User.autologinFunc = Full(()={   

[Lift] URL in PlainMailBodyType to BlackBerry

2009-10-12 Thread Naftoli Gugenheim
Hi. I'm sending an email using PlainMailBodyType that contains a URL. Normally when a BlackBerry receives a plain text email it automatically hyperlinks URLS and potential phone numbers. For some reason this email is not being hyperlinked on the BlackBerry. Is it possible that it's somehow not

[Lift] Re: Debug cookies

2009-10-12 Thread Ross Mellgren
setMaxAge is unfortunately named -- looking at the code it appears that HTTPCookies are actually immutable, and what setMaxAge does is returns you a new cookie with the new settings. Try: val cookie = net.liftweb.http.provider.HTTPCookie(cookieName, user.uniqueId.is ).setMaxAge(2 weeks)

[Lift] Re: Debug cookies

2009-10-12 Thread Naftoli Gugenheim
Thanks. I actually looked at the source code of HTTPCookie but I didn't put two and two together reading my code in Boot. I think the reason I did the math manually is because I was trying to minimize the number of imports. Do you think a lot of wildcard imports increase compile time, or not

[Lift] Re: Debug cookies

2009-10-12 Thread Ross Mellgren
I don't know if it increases compile time but I avoid wildcard imports like the plague because I think they're perhaps the most confusing thing reading scala code. Thinking to yourself that two types don't match, but you can't be sure if you're reading it wrong or if there's an implicit

[Lift] Re: URL in PlainMailBodyType to BlackBerry

2009-10-12 Thread David Pollak
Please send some test email to an account you can access using Thunderbird. Open the message and look at the message source. Is it really plain text? What do the headers say it is? On Mon, Oct 12, 2009 at 1:11 PM, Naftoli Gugenheim naftoli...@gmail.comwrote: Hi. I'm sending an email using

[Lift] net.liftweb.http.LiftFilter is not a javax.servlet.Filter

2009-10-12 Thread Timothy Perrett
Hey guys, I've been having a crazy problem all day (and now into the extremely late night). Basically, Jetty is throwing this error: jvm 1| java.lang.IllegalStateException: class net.liftweb.http.LiftFilter is not a javax.servlet.Filter jvm 1| at

[Lift] Re: net.liftweb.http.LiftFilter is not a javax.servlet.Filter

2009-10-12 Thread Ross Mellgren
My top-of-the-brain guess would be that you have two servlet JARs in your classpath, and jetty is using one but your WAR is using another. Really weird error though, for sure. -Ross On Oct 12, 2009, at 8:14 PM, Timothy Perrett wrote: Hey guys, I've been having a crazy problem all day

[Lift] Re: net.liftweb.http.LiftFilter is not a javax.servlet.Filter

2009-10-12 Thread Timothy Perrett
Hey Ross, Thanks for the response - I'll just take a look; im using maven-shade but thought id been careful about making sure i only had one javax.servlet I'll just double check now. Cheers, Tim On Oct 13, 1:22 am, Ross Mellgren dri...@gmail.com wrote: My top-of-the-brain guess would be

[Lift] Unused binding values for lift:bind

2009-10-12 Thread Ross Mellgren
I recently started getting this warning my log, after I started using more than one bind position in my default template. Looking at the code, it looks like it will (erroneously?) warn any time there is more than one bind point and you are in dev mode: 20:18:53,987 [http-0.0.0.0-28543-1]

[Lift] Re: net.liftweb.http.LiftFilter is not a javax.servlet.Filter

2009-10-12 Thread Timothy Perrett
Nope, I've certainly only got 1 javax.servlet in my CP. Looking at the Jetty source: http://jetty.mortbay.com/xref/org/mortbay/jetty/servlet/FilterHolder.html#86 It appears its using isAssignableFrom - the question is, that how can it find the filter class usually, and be fine, but not when

[Lift] Re: net.liftweb.http.LiftFilter is not a javax.servlet.Filter

2009-10-12 Thread Ross Mellgren
Especially since it prints out the valid class name in the log message. I suppose you can't post the WAR somewhere so I can have a poke? -Ross On Oct 12, 2009, at 8:41 PM, Timothy Perrett wrote: Nope, I've certainly only got 1 javax.servlet in my CP. Looking at the Jetty source:

[Lift] Re: net.liftweb.http.LiftFilter is not a javax.servlet.Filter

2009-10-12 Thread Timothy Perrett
I cant really post the war im afraid, as its calling all manner of services on some internal systems. The strange thing with all of this is that it works when you execute: java -jar myapp.war Here's what you should need to just make a similar demo project:

[Lift] Re: net.liftweb.http.LiftFilter is not a javax.servlet.Filter

2009-10-12 Thread Naftoli Gugenheim
Wouldn't know, but have you tried looking up the source code that throws the exception? Is Jetty trying to do anything unusual? On Mon, Oct 12, 2009 at 8:14 PM, Timothy Perrett timo...@getintheloop.eu wrote: Hey guys, I've been having a crazy problem all day (and now into the extremely late

[Lift] Re: URL in PlainMailBodyType to BlackBerry

2009-10-12 Thread Naftoli Gugenheim
Does this help? It's from GMail / Show original Delivered-To: naftoli...@gmail.com Received: by 10.86.30.11 with SMTP id d11cs12302fgd; Wed, 7 Oct 2009 12:28:57 -0700 (PDT) Received: by 10.229.19.149 with SMTP id a21mr391667qcb.29.1254943736364; Wed, 07 Oct 2009 12:28:56 -0700

[Lift] Re: net.liftweb.http.LiftFilter is not a javax.servlet.Filter

2009-10-12 Thread Ross Mellgren
Before I go barking up the wrong tree, by JWS you mean Java Web Start or Java Web Services? I must confess, Im running a fairly specific config. Essentially I have an executable WAR file that has a jetty launcher class inside - its pretty sweet, and it works from the command line doing:

[Lift] Re: Extend the tables that like the migration in the Rails ?

2009-10-12 Thread Neil.Lv
Yeah, I have add this code in the Boot.scala. ### Schemifier.schemify(true, Log.infoF _, User) ### But i want to add a column into the user table (extend the user table) now, and how can i achieve this purpose. Ex: ### Original user table like this idemail first_name last_name

[Lift] Re: URL in PlainMailBodyType to BlackBerry

2009-10-12 Thread Ross Mellgren
That looks to be plain text, although it's using multipart encoding where it probably does not need to. -Ross On Oct 12, 2009, at 9:17 PM, Naftoli Gugenheim wrote: Does this help? It's from GMail / Show original Delivered-To: naftoli...@gmail.com Received: by 10.86.30.11 with SMTP id

[Lift] Re: Use lift1.0 or 1.1 or 1.x to create a stable and large site(project) ?

2009-10-12 Thread Neil.Lv
Yeah, it works now ! Thanks very much ! Cheers, Neil On Oct 13, 1:32 am, David Pollak feeder.of.the.be...@gmail.com wrote: You have to include -DremoteRepositories=http://scala-tools.org/repo-* snapshots* in the command line. On Sun, Oct 11, 2009 at 7:41 PM, Neil.Lv

[Lift] Re: Extend the tables that like the migration in the Rails ?

2009-10-12 Thread David Pollak
Just add the column to the User model. Schemifier will add the column to the RDBMS. On Mon, Oct 12, 2009 at 6:20 PM, Neil.Lv anim...@gmail.com wrote: Yeah, I have add this code in the Boot.scala. ### Schemifier.schemify(true, Log.infoF _, User) ### But i want to add a column into the

[Lift] Re: Extend the tables that like the migration in the Rails ?

2009-10-12 Thread Neil.Lv
Yeah, I see it now, and it works ! 1): ### I add a column in the User model, like this class User extends MegaProtoUser[User] { ... /* add column dos4 */ object dos4 extends MappedBoolean(this) ... } result: INFO - ALTER TABLE users ADD COLUMN do4 SMALLINT ###

[Lift] Re: URL in PlainMailBodyType to BlackBerry

2009-10-12 Thread David Pollak
On Mon, Oct 12, 2009 at 6:17 PM, Naftoli Gugenheim naftoli...@gmail.comwrote: Does this help? It's from GMail / Show original GMail munges things, so I don't know if that's the original message. You might want to figure out what the specs are for blackberry to convert messages and see why

[Lift] Re: URL in PlainMailBodyType to BlackBerry

2009-10-12 Thread Naftoli Gugenheim
True, I may have to do that at some point, although I'm not super confident I'll find such specs. What do you say to Ross's comment? Why is it multipart? - David Pollakfeeder.of.the.be...@gmail.com wrote: On Mon, Oct 12, 2009 at 6:17 PM, Naftoli Gugenheim

[Lift] Re: Why fields are declared as 'object' with Mapper/Record?

2009-10-12 Thread David Pollak
I've got a change on review board that will pick up vals and lazy vals that are MappedFields. See http://reviewboard.liftweb.net/r/40/ However, until certain defects in the Scala compiler ( https://lampsvn.epfl.ch/trac/scala/ticket/2463 and https://lampsvn.epfl.ch/trac/scala/ticket/1006) are

[Lift] Re: Why fields are declared as 'object' with Mapper/Record?

2009-10-12 Thread Oleg G.
After reading Naftoli's post i checked the way inner object laziness is implemented. And it appears to be not thread safe. Following code: class A { val a = 1 } class B { object b extends A } Generates getter for b as follows: public final B$b$ b(); Code: 0: aload_0 1: getfield