[Lift] Re: Best method to protect most menu items?
On 23 Jun 2009, David Pollak wrote: Jeppe, I just checked in code (it'll take 45 minutes to hit the Maven repo) that has global LocParams for each SiteMap. The SiteMap constructor is now: SiteMap(globalParamFuncs: List[PartialFunction[Box[Req], Loc.LocParam]], kids: Menu*) You can put your Redirect stuff in like: List({ case _ if !User.loggedIn_? = ... }) Brilliant! Works nicely. I ended up with this val menuDispatch:List[PartialFunction[Box[Req], Loc.LocParam]] = List({ case Full(Req(profile :: login :: Nil , _, _)) = Hidden case Full(Req(profile :: lost_password :: Nil , _, _)) = Hidden case Full(Req(_, _, _)) if !User.loggedIn_? = Loc.EarlyResponse(() = Full(RedirectResponse(/profile/login?returnTo=+S.uri))) }) A couple of questions: 1) Why the need for Box[Req]? When will it be Empty? 2) In the above I had to use Hidden as a dummy value to signal no Loc. It might be useful with a Box[Loc.LocParam] as return value? /Jeppe --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Anyone working on the flot widget?
Hi, We need to do quite a lot of charting in our app and after evaluating several libraries we've settled on Flot (for now at least :-) So I was happy to discover there was already some Flot integrations in Lift. After having looked a bit at this, it seems there are some things missing that we would need: 1) Better support for barcharts (ie specifying data series as (label, value)) 2) Support for pie charts (patches exists for the JS part) But before diving into this I thought to ask if anybody is already working on the flot widget (or has other ideas for the Flot stuff) /Jeppe --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: [scala] JPA question
Derek Would you distinguish between what is achievable in a specific ORM such as Hibernate from JPA in this statement or would you think it applies to all. I've got to go with hibernate in any case because of widespread use of UserTypes. Unlike Greg, in my case I can hand-craft all my hibernate xml files if I need. Tim On Jun 23, 1:46 am, Derek Chen-Becker dchenbec...@gmail.com wrote: For sufficiently complex relationships, JPA is not a good fit. Beyond a certain point it's usually simpler to roll your own. I think that this is somewhat of a failing of the model, but it's not a simple problem to solve in the generic case. Derek On Mon, Jun 22, 2009 at 6:45 PM, Derek Chen-Becker dchenbec...@gmail.comwrote: Ah, sorry, I lost track of the thread. On Mon, Jun 22, 2009 at 4:55 PM, Meredith Gregory lgreg.mered...@gmail.com wrote: Derek, You are correct and i noted and reported this on Scala on Friday. However, if you have a chain of the form AbstractClass - Class -contains- AbstractClass -Class -contains- ... The @MappedSuperclass solution fails at level 2. Best wishes, --greg On Mon, Jun 22, 2009 at 3:52 PM, Derek Chen-Becker dchenbec...@gmail.com wrote: Something I just want to throw out into the discussion: Since you're using table-per-class, having a @Table annotation on AbstractContainer doesn't do anything since abstract classes can't have instances. Tables are only generated for abstract classes if you're using a JOINED inheritance strategy. You might want to look at using the MappedSuperclass annotation for the abstract base class instead. If I change the AbstractContainer def to: @MappedSuperclass public abstract class AbstractContainer implements java.io.Serializable { and then modify MySampleFuContainer to: public class MySampleFuContainer extends AbstractContainer { then I seem to get the proper schema: create table lingo_production.MySampleFuContainer_table ( id varchar(255) not null, uuid varchar(255), mysamplingmumble__idSuper varchar(255), primary key (id), unique (uuid) ); Having said that, I think that the behavior you're currently seeing appears to be a bug. Derek On Mon, Jun 22, 2009 at 3:43 PM, Meredith Gregory lgreg.mered...@gmail.com wrote: Kris, Herehttp://svn.biosimilarity.com/src/open/codesamples/trunk/hibernate/is a link to the self-contained example that now uses just Java. i included the target dir in the repo to speed up investigation, but you can just blow that away and build from scratch. The example is currently written to Java1.6, but also exhibits the same behavior under Java1.5. To run the example svn co http://svn.biosimilarity.com/src/open/codesamples/trunk/hibernate ... env PATH=path-to-java1.6:$PATH JAVA_HOME=path-to-java1.6 mvn clean compile process-classes If you switch comment and decl at line 22 in src/main/java/maxb/hbex2/MySampleFuContainer.java then you see the error. The schema goes from create table lingo_production.MySampleFuContainer_table ( id_AbstractContainer varchar(255) not null, varchar(255) not null, uuid varchar(255), mysamplingmumble__idSuper varchar(255), primary key (id), unique (uuid) ); to create table lingo_production.MySampleFuContainer_table ( id_AbstractContainer varchar(255) not null, id varchar(255), mysamplingmumble_ tinyblob, uuid varchar(255), primary key (id_AbstractContainer), unique (id_AbstractContainer) ); Best wishes, --greg On Mon, Jun 22, 2009 at 1:38 PM, Meredith Gregory lgreg.mered...@gmail.com wrote: Kris, Thanks for the suggestion. i've now got a tiny little example that compiles on its own that illustrates the problem. Changing the inheritance strategy to JOINED makes no difference. Hibernate still does the wrong thing. Best wishes, --greg On Mon, Jun 22, 2009 at 8:55 AM, Kris Nuttycombe kris.nuttyco...@gmail.com wrote: This may be off the mark, but I'm wondering if the reason that you're having difficulty with the parallel inheritance hierarchy problem is not your use of TABLE_PER_CLASS inheritance. In my application, I have a similar construct, but I am using JOINED_TABLE inheritance. This allows for a normal foreign key relationship to be created in the database between C2_table and the base table for CThing, with the result that Hibernate will generate the query for CThing member as a union. Using table per class inheritance, I would expect Hibernate to need to synthesize an additional dtype field in C2_table along with the key column in order to enforce the uniqueness of the keys to the joined entities, and I don't believe that it does this. I'm not sure how the fact that the code is generated is particularly relevant;
[Lift] Re: Anyone working on the flot widget?
I've not spoken with Francois for some time, but I'll ask him next time he's online if he's able to make changes to the flot stuff. He's based in Chilli so should be online later on. Cheers, Tim On 24/06/2009 09:15, Jeppe Nejsum Madsen je...@ingolfs.dk wrote: Hi, We need to do quite a lot of charting in our app and after evaluating several libraries we've settled on Flot (for now at least :-) So I was happy to discover there was already some Flot integrations in Lift. After having looked a bit at this, it seems there are some things missing that we would need: 1) Better support for barcharts (ie specifying data series as (label, value)) 2) Support for pie charts (patches exists for the JS part) But before diving into this I thought to ask if anybody is already working on the flot widget (or has other ideas for the Flot stuff) /Jeppe --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Thead safe part and transaction management in Lift
Hello guys, I'm following my path through lift, and there is some part that are still not really clear for me. First question: what parts of lift are thread safe ? In particular, does the request/response handling cycle is thread safe ? I thing so, but I didn't found any doc that assert that. Second question: how transaction are handled with Lift default ORM layout ? I'm didn't see how we declare a transaction, and especially how one can handle rollbacks. Any inputs or links toward resources answering these two points would be much appreciated ! Thanks in advance, -- Francois Armand http://fanf42.blogspot.com --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Thead safe part and transaction management in Lift
On Jun 24, 12:10 pm, fan...@gmail.com fan...@gmail.com wrote: Hello guys, I'm following my path through lift, and there is some part that are still not really clear for me. First question: what parts of lift are thread safe ? In particular, does the request/response handling cycle is thread safe ? I thing so, but I didn't found any doc that assert that. Yes it is thread safe. It is one of the most fundamental design scopes of lift. Do you have any specifics in mind that you need answers? Second question: how transaction are handled with Lift default ORM layout ? I'm didn't see how we declare a transaction, and especially how one can handle rollbacks. Please see DB.scala commit/rollback semantics are there. Any inputs or links toward resources answering these two points would be much appreciated ! Thanks in advance, -- Francois Armandhttp://fanf42.blogspot.com --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Thead safe part and transaction management in Lift
marius d. a écrit : Yes it is thread safe. It is one of the most fundamental design scopes of lift. Do you have any specifics in mind that you need answers? No, in fact I took as an assumption the thread-safety of request/response (and I saw some thread local call in the lift code), but it was to be sure :) Second question: how transaction are handled with Lift default ORM layout ? I'm didn't see how we declare a transaction, and especially how one can handle rollbacks. Please see DB.scala commit/rollback semantics are there. OK, I see the code, and I discover a buildLoanWrapper that perhaps I could call in Boot class, to have default behaviour for transaction. Thank you very much for your answers ! -- Francois Armand http://fanf42.blogspot.com --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Thead safe part and transaction management in Lift
On Jun 24, 2:18 pm, fan...@gmail.com fan...@gmail.com wrote: marius d. a écrit : Yes it is thread safe. It is one of the most fundamental design scopes of lift. Do you have any specifics in mind that you need answers? No, in fact I took as an assumption the thread-safety of request/response (and I saw some thread local call in the lift code), but it was to be sure :) We use thread locals quite a bit for request life cycle state management. i.e. in S object, RequestVar etc. It is a concise model of scoping state. Second question: how transaction are handled with Lift default ORM layout ? I'm didn't see how we declare a transaction, and especially how one can handle rollbacks. Please see DB.scala commit/rollback semantics are there. OK, I see the code, and I discover a buildLoanWrapper that perhaps I could call in Boot class, to have default behaviour for transaction. Thank you very much for your answers ! -- Francois Armandhttp://fanf42.blogspot.com --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: lift and mysql
People using MySQL might also want to consider putting their database connection information in a props file. See http://groups.google.com/group/liftweb/browse_thread/thread/763cbe16259ce3ea. Perhaps something to add to the wiki? Peter On Jun 23, 12:48 pm, David Pollak feeder.of.the.be...@gmail.com wrote: Rog, Thanks for pointing to this old wiki page. I've changed Can - Box. I've updated the wiki. And, yes, it should work. Thanks, David On Tue, Jun 23, 2009 at 11:01 AM, Rogelio rogbo...@gmail.com wrote: Hi All, I'm new to Lift so forgive me if this is old news -- I did not see this info in a search of the group archive. I've been trying to get Lift to work with MySQL following the instructions on the wiki: http://wiki.liftweb.net/index.php/HowTo_configure_lift_with_MySQL I kept getting an error that Can was an unresolved symbol in line 2 of this section of code: code object DBVendor extends ConnectionManager { def newConnection(name: ConnectionIdentifier): Can[Connection] = { try { Class.forName(com.mysql.jdbc.Driver) val dm = DriverManager.getConnection(jdbc:mysql://localhost/name- of-your-database?user=rootpassword=mysql-password) Full(dm) } catch { case e : Exception = e.printStackTrace; Empty } } def releaseConnection(conn: Connection) {conn.close} } /code I found that if I replaced the word Can with Box (ie Box [Connection]), then I was able to get the wiki instructions to work. I also has to preface the two import statement in the wiki with _root_. So far it appears to work, but others with more experience may want to weigh in. Thanks, Rog -- Lift, the simply functional web frameworkhttp://liftweb.net Beginning Scalahttp://www.apress.com/book/view/1430219890 Follow me:http://twitter.com/dpp Git some:http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Is there any eclipse setup that actually works for lift?
Hello Everyone, Thanks for all your suggestions and the version numbers -- I'll give them a try. I tried NetBeans 6.7RC3 yesterday, btw, but its maven+scala support has a major bug with regard to compiler errors, so it's no better than my experience with Eclipse at this time. (The plugin versions were Maven 4.2 and Scala Kit 0.15.0) Cheers, Ellis On Jun 23, 6:30 am, Rudi Engelbrecht rudis...@gmail.com wrote: Hi Dano I am using the debugger in IntelliJ IDEA and it works seamlessly - stepping through Scala code - I find stepping through code helps learning the Lift framework. If you are not committed to using a specific IDE, then trying IntelliJ will be a useful investment - you can download a 30 day trial - it has been my favourite Java IDE for the past 8 years. Regards Rudi Cell: +27 82 551 0582 On 23 Jun 2009, at 12:20 AM, Dano olearydani...@gmail.com wrote: Rudi, Thanks for posting your Intellij specifics. Wondering if you are using the debugger and find that it works for your scala/lift debugging? Dano On Jun 22, 2:57 pm, Rudi Engelbrecht rudis...@gmail.com wrote: I know you are looking for a working Eclipse configuration, but I have had great success and stability with IntelliJ IDEA 8.1.2 Scala 2.7.4 The Scala plugin for IDEA Lift 1.0 I can do mvn jetty:run from the IDE and what is really cool is that I can set breakpoints and debug the mvn jetty:run target from IDEA and then explore the scala code. Just thought I will post version numbers of a working environment. Regards Rudi On 22 Jun 2009, at 8:35 PM, David Pollak feeder.of.the.be...@gmail.com wrote: On Mon, Jun 22, 2009 at 11:25 AM, Ellis ellis.whiteh...@gmail.com wrote: Hello David, Thanks for your reply. Do you know whether lift *should* work with scala 2.8 when we pull it from the maven repositories? Lift currently only works with Scala 2.7.4. You can use Eclipse and 2.7.5 to edit Lift files, but Lift must be deployed against 2.7.4. We will have a branch of Lift (Jorge... you got this running yet) building against 2.8, but it will be experimental. I have experienced a fair number of suboptimalities with Lift and Eclipse in the last 3 weeks with the 2.7.5 stable plugin. I have had success recently with NetBeans, IntelliJ, and emacs. If so, then I'll try deleting my ~/.m2 as Tim suggested. Thanks, Ellis On Jun 22, 8:14 pm, David Pollak feeder.of.the.be...@gmail.com wrote: Ellis, Miles will be back online in a few days, but I suspect that the answer is that the 2.8 plugin is the new generation and the 2.7.5 stuff is going to have bugs. :-( Sorry. David On Mon, Jun 22, 2009 at 11:08 AM, Ellis ellis.whiteh...@gmail.com wrote: Hello everyone, Does anyone have a setup for eclipse that works like it should? By like it should, I mostly mean that the scala plugin doesn't crash regularly AND it works with lift/maven. If so, which versions of which plugins are you using? The nightly build of the scala plugin seems to work better than 2.7.4/2.7.5 in some ways, but I couldn't get it working with lift/ maven due to signature differences between the scala libraries. Best regards, Ellis -- Lift, the simply functional web frameworkhttp://liftweb.net Beginning Scalahttp://www.apress.com/book/view/1430219890 Follow me:http://twitter.com/dpp Git some:http://github.com/dpp -- Lift, the simply functional web frameworkhttp://liftweb.net Beginning Scalahttp://www.apress.com/book/view/1430219890 Follow me:http://twitter.com/dpp Git some:http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Best method to protect most menu items?
On Wed, Jun 24, 2009 at 12:58 AM, Jeppe Nejsum Madsen je...@ingolfs.dkwrote: On 23 Jun 2009, David Pollak wrote: Jeppe, I just checked in code (it'll take 45 minutes to hit the Maven repo) that has global LocParams for each SiteMap. The SiteMap constructor is now: SiteMap(globalParamFuncs: List[PartialFunction[Box[Req], Loc.LocParam]], kids: Menu*) You can put your Redirect stuff in like: List({ case _ if !User.loggedIn_? = ... }) Brilliant! Works nicely. I ended up with this val menuDispatch:List[PartialFunction[Box[Req], Loc.LocParam]] = List({ case Full(Req(profile :: login :: Nil , _, _)) = Hidden case Full(Req(profile :: lost_password :: Nil , _, _)) = Hidden I would put these Hidden items on the specific menu items rather than matching against a path. Locating Hidden with the items to be hidden will help you and other developers see what the non-global rules are. case Full(Req(_, _, _)) if !User.loggedIn_? = Loc.EarlyResponse(() = Full(RedirectResponse(/profile/login?returnTo=+S.uri))) This could be case _ if User.loggedIn_? = or case Full(_) if User.loggedIn_? = }) A couple of questions: 1) Why the need for Box[Req]? When will it be Empty? If the menu building takes place inside the scope of a CometActor. There are times when Lift does stuff outside of the scope of a specific request. It's unlikely that this will happen in the normal case, but it could happen (e.g., someone updates menus in a CometActor). 2) In the above I had to use Hidden as a dummy value to signal no Loc. It might be useful with a Box[Loc.LocParam] as return value? Oh... I get why you did the Hidden thing... I'd do the following: case Full(Req(path, _, _)) if !User.loggedIn_? path != List(profile, login) path != path != List(profile, lost_password) = Loc.EarlyResponse(() = Full(RedirectResponse(/profile/login?returnTo=+S.uri))) If you prefer to do the pattern matching thing, you can return: new Loc.LocParam{} That's a noop. Thanks, David /Jeppe -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Error shutting down Jetty instance
Works for me. Thanks for the quick fix. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Another backtrace on reload
I'm getting this one on server reloads if I have mvn scala:cc running in one terminal and mvn jetty:run in another. Happens whenever I make a code change that gets redeployed: ERROR - Failed to Boot java.lang.NullPointerException: Looking for Connection Identifier ConnectionIdentifier(lift) but failed to find either a JNDI data source with the name lift or a lift connection manager with the correct name at net.liftweb.mapper.DB$$anonfun$3$$anonfun$apply$7.apply(DB.scala:95) at net.liftweb.mapper.DB$$anonfun$3$$anonfun$apply$7.apply(DB.scala:95) at net.liftweb.util.EmptyBox.openOr(Box.scala:372) at net.liftweb.mapper.DB$$anonfun$3.apply(DB.scala:95) at net.liftweb.mapper.DB$$anonfun$3.apply(DB.scala:95) at net.liftweb.util.EmptyBox.openOr(Box.scala:372) at net.liftweb.mapper.DB$.newConnection(DB.scala:89) at net.liftweb.mapper.DB$.getConnection(DB.scala:136) at net.liftweb.mapper.DB$.use(DB.scala:315) at net.liftweb.mapper.Schemifier$.schemify(Schemifier.scala:53) at net.liftweb.mapper.Schemifier$.schemify(Schemifier.scala:36) at bootstrap.liftweb.Boot.boot(Boot.scala:24) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at net.liftweb.util.ClassHelpers$$anonfun$createInvoker$1.apply(ClassHelpers.scala:408) at net.liftweb.util.ClassHelpers$$anonfun$createInvoker$1.apply(ClassHelpers.scala:406) at net.liftweb.http.DefaultBootstrap$$anonfun$boot$1.apply(LiftRules.scala:1041) at net.liftweb.http.DefaultBootstrap$$anonfun$boot$1.apply(LiftRules.scala:1041) at net.liftweb.util.Full.map(Box.scala:330) at net.liftweb.http.DefaultBootstrap$.boot(LiftRules.scala:1041) at net.liftweb.http.LiftFilter.bootLift(LiftServlet.scala:561) at net.liftweb.http.LiftFilter.init(LiftServlet.scala:529) at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:653) at org.mortbay.jetty.servlet.Context.startContext(Context.java:140) at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1239) at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:466) at org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:124) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) at org.mortbay.jetty.plugin.AbstractJettyRunMojo.restartWebApp(AbstractJettyRunMojo.java:446) at org.mortbay.jetty.plugin.AbstractJettyRunMojo$1.filesChanged(AbstractJettyRunMojo.java:407) at org.mortbay.util.Scanner.reportBulkChanges(Scanner.java:486) at org.mortbay.util.Scanner.reportDifferences(Scanner.java:352) at org.mortbay.util.Scanner.scan(Scanner.java:280) at org.mortbay.util.Scanner$1.run(Scanner.java:232) at java.util.TimerThread.mainLoop(Timer.java:512) at java.util.TimerThread.run(Timer.java:462) [INFO] Restart completed at Wed Jun 24 08:43:27 CDT 2009 --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Stax
Folks, The folks in the ESME project have been hosting demo versions of ESME on http://stax.net/ I had the pleasure of speaking with the CEO of Stax yesterday. I really like his vision of where he wants to take Stax. Plus, I think that Stax offers everything that GAE offers plus a lot more flexibility and potential future growth. One of the things I'm not so good with is figuring out the details of what is needed for a given technology to be useful for an audience as broad as the Lift community... I don't know what kinds of things are necessary to have on the toolchain. Could a few of you play with Stax and put together a list of stuff you'd like to see in Stax with respect to Lift. Having that list will help guide the Stax folks to making Lift support even better. Thanks, David -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Another backtrace on reload
Are you using JNDI or your own connection manager to connect to the RDBMS? On Wed, Jun 24, 2009 at 6:50 AM, Nolan Darilek no...@thewordnerd.infowrote: I'm getting this one on server reloads if I have mvn scala:cc running in one terminal and mvn jetty:run in another. Happens whenever I make a code change that gets redeployed: ERROR - Failed to Boot java.lang.NullPointerException: Looking for Connection Identifier ConnectionIdentifier(lift) but failed to find either a JNDI data source with the name lift or a lift connection manager with the correct name at net.liftweb.mapper.DB$$anonfun$3$$anonfun$apply$7.apply(DB.scala:95) at net.liftweb.mapper.DB$$anonfun$3$$anonfun$apply$7.apply(DB.scala:95) at net.liftweb.util.EmptyBox.openOr(Box.scala:372) at net.liftweb.mapper.DB$$anonfun$3.apply(DB.scala:95) at net.liftweb.mapper.DB$$anonfun$3.apply(DB.scala:95) at net.liftweb.util.EmptyBox.openOr(Box.scala:372) at net.liftweb.mapper.DB$.newConnection(DB.scala:89) at net.liftweb.mapper.DB$.getConnection(DB.scala:136) at net.liftweb.mapper.DB$.use(DB.scala:315) at net.liftweb.mapper.Schemifier$.schemify(Schemifier.scala:53) at net.liftweb.mapper.Schemifier$.schemify(Schemifier.scala:36) at bootstrap.liftweb.Boot.boot(Boot.scala:24) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at net.liftweb.util.ClassHelpers$$anonfun$createInvoker$1.apply(ClassHelpers.scala:408) at net.liftweb.util.ClassHelpers$$anonfun$createInvoker$1.apply(ClassHelpers.scala:406) at net.liftweb.http.DefaultBootstrap$$anonfun$boot$1.apply(LiftRules.scala:1041) at net.liftweb.http.DefaultBootstrap$$anonfun$boot$1.apply(LiftRules.scala:1041) at net.liftweb.util.Full.map(Box.scala:330) at net.liftweb.http.DefaultBootstrap$.boot(LiftRules.scala:1041) at net.liftweb.http.LiftFilter.bootLift(LiftServlet.scala:561) at net.liftweb.http.LiftFilter.init(LiftServlet.scala:529) at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:653) at org.mortbay.jetty.servlet.Context.startContext(Context.java:140) at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1239) at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:466) at org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:124) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) at org.mortbay.jetty.plugin.AbstractJettyRunMojo.restartWebApp(AbstractJettyRunMojo.java:446) at org.mortbay.jetty.plugin.AbstractJettyRunMojo$1.filesChanged(AbstractJettyRunMojo.java:407) at org.mortbay.util.Scanner.reportBulkChanges(Scanner.java:486) at org.mortbay.util.Scanner.reportDifferences(Scanner.java:352) at org.mortbay.util.Scanner.scan(Scanner.java:280) at org.mortbay.util.Scanner$1.run(Scanner.java:232) at java.util.TimerThread.mainLoop(Timer.java:512) at java.util.TimerThread.run(Timer.java:462) [INFO] Restart completed at Wed Jun 24 08:43:27 CDT 2009 -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Stax
Would be neat to have a Lift application template when creating a new stax app. And the fact they are using Amazon EC2 is really great. Br's, Marius On Jun 24, 4:53 pm, David Pollak feeder.of.the.be...@gmail.com wrote: Folks, The folks in the ESME project have been hosting demo versions of ESME onhttp://stax.net/ I had the pleasure of speaking with the CEO of Stax yesterday. I really like his vision of where he wants to take Stax. Plus, I think that Stax offers everything that GAE offers plus a lot more flexibility and potential future growth. One of the things I'm not so good with is figuring out the details of what is needed for a given technology to be useful for an audience as broad as the Lift community... I don't know what kinds of things are necessary to have on the toolchain. Could a few of you play with Stax and put together a list of stuff you'd like to see in Stax with respect to Lift. Having that list will help guide the Stax folks to making Lift support even better. Thanks, David -- Lift, the simply functional web frameworkhttp://liftweb.net Beginning Scalahttp://www.apress.com/book/view/1430219890 Follow me:http://twitter.com/dpp Git some:http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Managed child entities
Very nice! On Mon, Jun 22, 2009 at 10:30 PM, Naftoli Gugenheim naftoli...@gmail.comwrote: I was working on something to help make it easier to deal with one to many relationships. I'm attaching it (OneToMany.scala) along with a class that uses it (partially work in progress), although it's a bit verbose (partially because my class names are very long). Advantages include access to the children like a collection, and ability to add and remove children but defer actually saving it, as well as adding the children before the parent was saved and got an id. It's not test very thoroughly, and of course any suggestions for improvement are more than welcome. I'm planning to try to make something similar for many to many soon. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Submenus for model-generated views
I haven't looked at the CRUDify trait in a while, but I think that what you want is something like: val entries = Menu(Loc(Home, List(index), Home)) :: Menu(Loc(Layous, Layouts.listPath, Layouts, Layouts.menus: _*) :: User.sitemap Using the listPath method makes sure that you match the actual prefix and path. In your case, the class is Layouts, which by default results in a Layouts path prefix, but in your code you're using layout. If you're overriding the table name to layout then your code should be working, I think. Also, List and Create are the only two links that should be shown, but I'm not sure that the current CRUDify code makes the delete, edit and view Menus hidden. Derek On Tue, Jun 23, 2009 at 10:42 AM, Nolan Darilek no...@thewordnerd.infowrote: This is something I asked in a subthread, but maybe it deserves its own thread in case someone might have the answer but chose to stop reading the original, whose subject line isn't really accurate for this question anyhow. :) I have a model that I'm using CRUDify for. I'd like to link the model into my sitemap such that it has a single top-level menu item pointing to /model/list, at which point the CRUD actions appear. So, basically, I want Model.menus to be a series of submenus beneath a menu named for the model. Thus far I have: val entries = Menu(Loc(Home, List(index), Home)) :: Menu(Loc(layouts, List(layout, list), Layouts), Layout.menus:_*) :: User.sitemap This gives me the Layouts menu item, but it doesn't work. Specifically, I get a 404 when I click on Layouts, but not a message telling me that /layout/list isn't in the sitemap. From this I assume that /layout/list expects to find a filesystem-based template, and whatever magic the Layout.menus injects isn't taking. I've tried a number of variations. I'm also reading chapter 5 of Mastering Lift. It could be that the answer is there and obvious, but this is all a lot to take in for someone coming from five years of Rails and 1.5 of Merb. :) --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Deployment questions and little Java web dev experience
The line is blurring. With EJB 3.1 (Java EE 6) there is talk of using various profiles so that you can essentially deploy a WAR file that bootstraps a subset of an application server feature set within a servlet container. OpenEJB already does something like this: http://openejb.apache.org/ Derek On Tue, Jun 23, 2009 at 1:54 PM, Jeppe Nejsum Madsen je...@ingolfs.dkwrote: On 23 Jun 2009, Naftoli Gugenhem wrote: What's the difference between an application server and a servlet container? Depends on who you ask :-) Application server usually means a J2EE implementation which support things such as EJBs, message services, transaction monitors, database pools (and a servlet container). A servlet container, as the name implies, is a service that can be used to host servlets. So while applications can run using only a servlet container, an application server typically means a servlet container and a lot of extra services which you may or (most likely) may not need. /Jeppe --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Misleading error: The Requested URL /admin/orders/new was not found on this server
Just the other day Lift said it was going to go for a short walk after lunch, but it came back at 2am smelling of cheap vodka. sigh On Tue, Jun 23, 2009 at 5:31 PM, David Pollak feeder.of.the.be...@gmail.com wrote: I hate it when Lift lies... it sucks rubber donkey lungs!! I've just checked in code that should make this kind of error much more obvious. I'm sorry for your frustration, but thanks to you and your error report, future Lift users will have a much better time. On Tue, Jun 23, 2009 at 3:31 PM, Trav wilhel...@gmail.com wrote: The Requested URL /admin/orders/new was not found on this server So I check my SiteMap: Menu(Loc(New Order, orders :: new :: Nil, ?(New Order))) I check there is a file orders/new.html (admin is the web context) Then I read about site maps, and recheck and try new Locs. I study my logs. Hours go by and I'm quite frustrated. Finally it dawns on me that the error message may be lying to me and I start to comment out lines from the new.html file -- presto! Here is the line that I commented out: trtdFull Name/tdtdbillingAddress:recipient //tr Oh, lookie, it's missing a closing td tag. Cuss this, cuss that commit and go to sleep. So something else should have caught that (like my IDE), but in the end: lift lied! -Trav -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Can't embed a snippet
Wait a second. I have plenty of templates that have multiple elements in them. What exactly is the problem you're seeing here? Derek On Tue, Jun 23, 2009 at 10:09 PM, Nolan Darilek no...@thewordnerd.infowrote: Cool deal, mvn test showed me the issue. Apparently, templates can only have a single element, I had an h2/ and a p/. The book called it a fragment, so this wasn't entirely clear. In any case, I put a div#welcome around it and now it works fine. Thanks for the pointer. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Best method to protect most menu items?
On Wed, Jun 24, 2009 at 3:25 PM, David Pollak feeder.of.the.be...@gmail.com wrote: Oh... I get why you did the Hidden thing... I'd do the following: case Full(Req(path, _, _)) if !User.loggedIn_? path != List(profile, login) path != path != List(profile, lost_password) = Loc.EarlyResponse(() = Full(RedirectResponse(/profile/login?returnTo=+S.uri))) If you prefer to do the pattern matching thing, you can return: new Loc.LocParam{} That's a noop. Ahh yes (Note to self: Not everything needs to be pattern matched :-) Thanks for the quick solution! /Jeppe --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: [scala] JPA question
Well, in my real-world experience I've never had very complex models and I've never used TABLE-PER-CLASS either, so I don't really have a feel for what's not possible. Generally I think that JPA (which is a subset of Hibernate) covers a good portion of people's needs for ORM, but it definitely has some big missing functionality (e.g. no ordered collections until JPA 2). I think that in this case Greg is pushing the limits on a relatively unused corner of JPA (I've never seen someone use TABLE-PER-CLASS before) and he's hitting some bugs. I want to make clear that I think that what Greg is attempting is entirely possible. My earlier comment about rolling your own ORM was because I misunderstood what he was doing with abstract classes. In my mind, there would be a couple of places where you might want to roll your own stuff: 1. An existing schema that doesn't map well to an object graph. We have a legacy database at work where the brilliant developers decided that nothing should be normalized and data can exist in one of four tables based on some arcane business logic. You can still build an ORM layer on something like this, but essentially all you're doing is creating a thin wrapper on ResultSets 2. You have very specific data that you need to retrieve with possibly complex joins, and you need it to be as performant as possible. There are some tricks you can do with EJB QL to make it prefetch things, but often you can end up with multiple round trips to the database and/or data that you don't need being fetched. In certain scenarios I could see this being an issue. This list isn't intended to be exhaustive, these are just the top two that come to mind. In terms of Hibernate vs others like JPOX, TopLink, etc, I'd say that Hibernate is a first-class provider and at least equal to the others. Derek On Wed, Jun 24, 2009 at 2:21 AM, TSP tim.pig...@optrak.co.uk wrote: Derek Would you distinguish between what is achievable in a specific ORM such as Hibernate from JPA in this statement or would you think it applies to all. I've got to go with hibernate in any case because of widespread use of UserTypes. Unlike Greg, in my case I can hand-craft all my hibernate xml files if I need. Tim On Jun 23, 1:46 am, Derek Chen-Becker dchenbec...@gmail.com wrote: For sufficiently complex relationships, JPA is not a good fit. Beyond a certain point it's usually simpler to roll your own. I think that this is somewhat of a failing of the model, but it's not a simple problem to solve in the generic case. Derek On Mon, Jun 22, 2009 at 6:45 PM, Derek Chen-Becker dchenbec...@gmail.comwrote: Ah, sorry, I lost track of the thread. On Mon, Jun 22, 2009 at 4:55 PM, Meredith Gregory lgreg.mered...@gmail.com wrote: Derek, You are correct and i noted and reported this on Scala on Friday. However, if you have a chain of the form AbstractClass - Class -contains- AbstractClass -Class -contains- ... The @MappedSuperclass solution fails at level 2. Best wishes, --greg On Mon, Jun 22, 2009 at 3:52 PM, Derek Chen-Becker dchenbec...@gmail.com wrote: Something I just want to throw out into the discussion: Since you're using table-per-class, having a @Table annotation on AbstractContainer doesn't do anything since abstract classes can't have instances. Tables are only generated for abstract classes if you're using a JOINED inheritance strategy. You might want to look at using the MappedSuperclass annotation for the abstract base class instead. If I change the AbstractContainer def to: @MappedSuperclass public abstract class AbstractContainer implements java.io.Serializable { and then modify MySampleFuContainer to: public class MySampleFuContainer extends AbstractContainer { then I seem to get the proper schema: create table lingo_production.MySampleFuContainer_table ( id varchar(255) not null, uuid varchar(255), mysamplingmumble__idSuper varchar(255), primary key (id), unique (uuid) ); Having said that, I think that the behavior you're currently seeing appears to be a bug. Derek On Mon, Jun 22, 2009 at 3:43 PM, Meredith Gregory lgreg.mered...@gmail.com wrote: Kris, Here http://svn.biosimilarity.com/src/open/codesamples/trunk/hibernate/is a link to the self-contained example that now uses just Java. i included the target dir in the repo to speed up investigation, but you can just blow that away and build from scratch. The example is currently written to Java1.6, but also exhibits the same behavior under Java1.5. To run the example svn co http://svn.biosimilarity.com/src/open/codesamples/trunk/hibernate ... env PATH=path-to-java1.6:$PATH JAVA_HOME=path-to-java1.6 mvn clean compile process-classes If you switch comment and decl
[Lift] Re: Can't embed a snippet
The error was occurring if you had more than a single root element. Thus: div h2/ p/ /div works whereas h2/ p/ caused the template not found erroneous exception before David fixed it. Thanks David! Kris On Wed, Jun 24, 2009 at 8:40 AM, Derek Chen-Beckerdchenbec...@gmail.com wrote: Wait a second. I have plenty of templates that have multiple elements in them. What exactly is the problem you're seeing here? Derek On Tue, Jun 23, 2009 at 10:09 PM, Nolan Darilek no...@thewordnerd.info wrote: Cool deal, mvn test showed me the issue. Apparently, templates can only have a single element, I had an h2/ and a p/. The book called it a fragment, so this wasn't entirely clear. In any case, I put a div#welcome around it and now it works fine. Thanks for the pointer. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Deployment questions and little Java web dev experience
I hadn't seen openejb before, thanks for the reference! Kris On Wed, Jun 24, 2009 at 8:35 AM, Derek Chen-Beckerdchenbec...@gmail.com wrote: The line is blurring. With EJB 3.1 (Java EE 6) there is talk of using various profiles so that you can essentially deploy a WAR file that bootstraps a subset of an application server feature set within a servlet container. OpenEJB already does something like this: http://openejb.apache.org/ Derek On Tue, Jun 23, 2009 at 1:54 PM, Jeppe Nejsum Madsen je...@ingolfs.dk wrote: On 23 Jun 2009, Naftoli Gugenhem wrote: What's the difference between an application server and a servlet container? Depends on who you ask :-) Application server usually means a J2EE implementation which support things such as EJBs, message services, transaction monitors, database pools (and a servlet container). A servlet container, as the name implies, is a service that can be used to host servlets. So while applications can run using only a servlet container, an application server typically means a servlet container and a lot of extra services which you may or (most likely) may not need. /Jeppe --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Can't embed a snippet
Ah, so this would be a top-level template (no lift:surround). Derek On Wed, Jun 24, 2009 at 9:16 AM, Kris Nuttycombe kris.nuttyco...@gmail.comwrote: The error was occurring if you had more than a single root element. Thus: div h2/ p/ /div works whereas h2/ p/ caused the template not found erroneous exception before David fixed it. Thanks David! Kris On Wed, Jun 24, 2009 at 8:40 AM, Derek Chen-Beckerdchenbec...@gmail.com wrote: Wait a second. I have plenty of templates that have multiple elements in them. What exactly is the problem you're seeing here? Derek On Tue, Jun 23, 2009 at 10:09 PM, Nolan Darilek no...@thewordnerd.info wrote: Cool deal, mvn test showed me the issue. Apparently, templates can only have a single element, I had an h2/ and a p/. The book called it a fragment, so this wasn't entirely clear. In any case, I put a div#welcome around it and now it works fine. Thanks for the pointer. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Another backtrace on reload
On 06/24/2009 08:54 AM, David Pollak wrote: Are you using JNDI or your own connection manager to connect to the RDBMS? I'm new to this, but I'm guessing the latter. In any case, I haven't touched whatever values the snapshot sets up in Boot.scala, nor have I set any properties, so it's stock Derby. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Can't embed a snippet
On 06/24/2009 09:40 AM, Derek Chen-Becker wrote: Wait a second. I have plenty of templates that have multiple elements in them. What exactly is the problem you're seeing here? Using 1.1, I have the following in templates-hidden/welcome.html: h2Welcome/h2 pPut welcome details here./p Running mvn test gives me the following failure report: --- Test set: info.thewordnerd.therascribe.AppTest --- Tests run: 2, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.8 sec FAILURE! testXml(info.thewordnerd.therascribe.AppTest) Time elapsed: 1.474 sec FAILURE! junit.framework.AssertionFailedError: Malformed XML in 1 file: src/main/webapp/templates-hidden/welcome.html at junit.framework.Assert.fail(Assert.java:47) at info.thewordnerd.therascribe.AppTest.testXml(AppTest.scala:72) .. From the surefire report: system-outMalformed XML in 1 file: src/main/webapp/templates-hidden/welcome.html /system-out system-err:3:70: document must contain exactly one element ^ /system-err Surrounding it in a div fixes that. Must be a new addition in 1.1? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Cheap Hosting
I have account with http://javaprovider.net they offer good service for java hosting Thanks Warren On Jun 16, 7:00 am, Harshad RJ harshad...@gmail.com wrote: Mark, Try VPSLink. http://vpslink.com/?ref=7J32ZZ The cheapest plan is about 6.6$ p/mo and you will get a discount of 10% if you use the above link (referral program). I have successfully run scala based servlets + postgresql db on it, with performance sufficient for my needs. I haven't tried Lift on it though. cheers, -- Harshad RJ WebHome » http://hrj.wikidot.com Classifieds » http://uproot.in --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Can't embed a snippet
Yes. Since it's a full template and not a fragment (using lift:surround /) it has to conform to normal XML rules. In particular, XML can only have one root element. Derek On Wed, Jun 24, 2009 at 9:08 AM, Nolan Darilek no...@thewordnerd.infowrote: On 06/24/2009 09:40 AM, Derek Chen-Becker wrote: Wait a second. I have plenty of templates that have multiple elements in them. What exactly is the problem you're seeing here? Using 1.1, I have the following in templates-hidden/welcome.html: h2Welcome/h2 pPut welcome details here./p Running mvn test gives me the following failure report: --- Test set: info.thewordnerd.therascribe.AppTest --- Tests run: 2, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.8 sec FAILURE! testXml(info.thewordnerd.therascribe.AppTest) Time elapsed: 1.474 sec FAILURE! junit.framework.AssertionFailedError: Malformed XML in 1 file: src/main/webapp/templates-hidden/welcome.html at junit.framework.Assert.fail(Assert.java:47) at info.thewordnerd.therascribe.AppTest.testXml(AppTest.scala:72) .. From the surefire report: system-outMalformed XML in 1 file: src/main/webapp/templates-hidden/welcome.html /system-out system-err:3:70: document must contain exactly one element ^ /system-err Surrounding it in a div fixes that. Must be a new addition in 1.1? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Best method to protect most menu items?
On Wed, Jun 24, 2009 at 7:49 AM, Jeppe Nejsum Madsen je...@ingolfs.dkwrote: On Wed, Jun 24, 2009 at 3:25 PM, David Pollak feeder.of.the.be...@gmail.com wrote: Oh... I get why you did the Hidden thing... I'd do the following: case Full(Req(path, _, _)) if !User.loggedIn_? path != List(profile, login) path != path != List(profile, lost_password) = Loc.EarlyResponse(() = Full(RedirectResponse(/profile/login?returnTo=+S.uri))) If you prefer to do the pattern matching thing, you can return: new Loc.LocParam{} That's a noop. Ahh yes (Note to self: Not everything needs to be pattern matched :-) Guards are your friend. Thanks for the quick solution! /Jeppe -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Stax
Can you use actors with Stax? My understanding was that GAE could not support actors. Mark Lynn Sabado Technologies On Jun 24, 2009, at 9:53 AM, David Pollak wrote: Folks, The folks in the ESME project have been hosting demo versions of ESME on http://stax.net/ I had the pleasure of speaking with the CEO of Stax yesterday. I really like his vision of where he wants to take Stax. Plus, I think that Stax offers everything that GAE offers plus a lot more flexibility and potential future growth. One of the things I'm not so good with is figuring out the details of what is needed for a given technology to be useful for an audience as broad as the Lift community... I don't know what kinds of things are necessary to have on the toolchain. Could a few of you play with Stax and put together a list of stuff you'd like to see in Stax with respect to Lift. Having that list will help guide the Stax folks to making Lift support even better. Thanks, David -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Stax
On Wed, Jun 24, 2009 at 7:06 AM, Mark Lynn m...@sabado.com wrote: Can you use actors with Stax? Yes. And MySQL, so there's no persistence lock-in like with BigTable. My understanding was that GAE could not support actors. Mark Lynn Sabado Technologies On Jun 24, 2009, at 9:53 AM, David Pollak wrote: Folks, The folks in the ESME project have been hosting demo versions of ESME on http://stax.net/ I had the pleasure of speaking with the CEO of Stax yesterday. I really like his vision of where he wants to take Stax. Plus, I think that Stax offers everything that GAE offers plus a lot more flexibility and potential future growth. One of the things I'm not so good with is figuring out the details of what is needed for a given technology to be useful for an audience as broad as the Lift community... I don't know what kinds of things are necessary to have on the toolchain. Could a few of you play with Stax and put together a list of stuff you'd like to see in Stax with respect to Lift. Having that list will help guide the Stax folks to making Lift support even better. Thanks, David -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Stax
Agreed - this does really look very good... DPP, do you know how they are doing the generation of applications? I guess they must have some templating system and im just wondering if its something like our existing archetypes and if they could be modified to become stax compatible or whatever. Cheers, Tim On Jun 24, 3:03 pm, marius d. marius.dan...@gmail.com wrote: Would be neat to have a Lift application template when creating a new stax app. And the fact they are using Amazon EC2 is really great. Br's, Marius On Jun 24, 4:53 pm, David Pollak feeder.of.the.be...@gmail.com wrote: Folks, The folks in the ESME project have been hosting demo versions of ESME onhttp://stax.net/ I had the pleasure of speaking with the CEO of Stax yesterday. I really like his vision of where he wants to take Stax. Plus, I think that Stax offers everything that GAE offers plus a lot more flexibility and potential future growth. One of the things I'm not so good with is figuring out the details of what is needed for a given technology to be useful for an audience as broad as the Lift community... I don't know what kinds of things are necessary to have on the toolchain. Could a few of you play with Stax and put together a list of stuff you'd like to see in Stax with respect to Lift. Having that list will help guide the Stax folks to making Lift support even better. Thanks, David -- Lift, the simply functional web frameworkhttp://liftweb.net Beginning Scalahttp://www.apress.com/book/view/1430219890 Follow me:http://twitter.com/dpp Git some:http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Stax
On Wed, Jun 24, 2009 at 9:02 AM, Timothy Perrett timo...@getintheloop.euwrote: Agreed - this does really look very good... DPP, do you know how they are doing the generation of applications? I guess they must have some templating system and im just wondering if its something like our existing archetypes and if they could be modified to become stax compatible or whatever. I don't know, but this is a good question to ask them. Cheers, Tim On Jun 24, 3:03 pm, marius d. marius.dan...@gmail.com wrote: Would be neat to have a Lift application template when creating a new stax app. And the fact they are using Amazon EC2 is really great. Br's, Marius On Jun 24, 4:53 pm, David Pollak feeder.of.the.be...@gmail.com wrote: Folks, The folks in the ESME project have been hosting demo versions of ESME onhttp://stax.net/ I had the pleasure of speaking with the CEO of Stax yesterday. I really like his vision of where he wants to take Stax. Plus, I think that Stax offers everything that GAE offers plus a lot more flexibility and potential future growth. One of the things I'm not so good with is figuring out the details of what is needed for a given technology to be useful for an audience as broad as the Lift community... I don't know what kinds of things are necessary to have on the toolchain. Could a few of you play with Stax and put together a list of stuff you'd like to see in Stax with respect to Lift. Having that list will help guide the Stax folks to making Lift support even better. Thanks, David -- Lift, the simply functional web frameworkhttp://liftweb.net Beginning Scalahttp://www.apress.com/book/view/1430219890 Follow me:http://twitter.com/dpp Git some:http://github.com/dpp -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Modify CRUDify XHTML
Hi all, I'm using CRUDify on one of my models and I'd like to display some additional data on the view template. I believe that I need to override one of the model definitions with some sort of reference to my own XHTML file. Which one? _viewTemplate? Or perhaps the viewTemplate method? Thanks, Peter Robinett --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: So where is that OAuth?
I've been working on the provider side of oauth to authenticate api calls. I was looking at the http-authentication example, but I'm not sure if want to go that route. I would like to be able to specify authentication for paths in the same place that I define them (in a DispatchPF). I'd also like to be able to pass down a Box[(consumer, Box[token])] to my response functions. This is what I have so far. I'm fairly new to scala/lift, so any pointers would be appreciated: object RestAPI extends XMLApiHelper{ //OAuth takes to functions for looking up the secrets associated with the consumer and token keys //trivial functions here for testing, but would be replaced with DB call val oauth = OAuth(c = c, t = t) def dispatch: LiftRules.DispatchPF = { case Req(List(api,user,userid), , GetRequest) = () = requireToken(showUser(userid)) } def showUser(userid: String) (consumer: Consumer, token: Token): LiftResponse = { val e: Box[NodeSeq] = for(r - User.find(userid.toLong)) yield { r.toXML } e } def unauth(message: String) = new XhtmlResponse(unauthorized {message}/unauthorized, Full(text/xml), Nil, Nil, 401, false) def requireToken(f: (Consumer, Token) = LiftResponse): LiftResponse = { oauth.verify_signature match { case Full((c, Full(t))) = f(c, t) case _ = unauth(Authentication failed) } } def requireSigned(f: (Consumer) = LiftResponse): LiftResponse = { oauth.verify_signature match { case Full((c, _)) = f(c) case _ = unauth(Invalid oauth signature) } } } On Jun 22, 12:36 pm, DFectuoso santiago1...@gmail.com wrote: Well i will start working on that tonight(after work of course) and keep you guys updated! Cheers! On Jun 22, 8:59 am, marius d. marius.dan...@gmail.com wrote: On Jun 22, 3:25 am, DFectuoso santiago1...@gmail.com wrote: Well i went ahead and learn a lot from the lift-openId implementation and understand what I would need to do have lift-OAuthworking It seems like i could do two things: 1) Get aOAuthjava library that allows me to post, get, login and logout then create aOAuth.scala file where i create a trait of the OAuthHandler that would access to this methods, then create a object that extends from that trait; Then create a OAuthProtoUser.scala where I would have a trait for the MetaOAuthProtoUser with the Xhtml for login, override the menus that i would not use and perform the login and logout of the user as well as the post and get methods. Finally create a trait for the OAuthProtoUser that would allow me to store information about the user. Besides Proto stuff we'd need an abstraction overOAuthartifacts. Essentially a wrapper over their Java library. 2) Go ahead and have the login,logout, post and get methods on the OAuth.scala actually do the logic to get the tokens without a java library, this would mean creating some way of signing a url and body to post and get stuff from the request, access and user-auth Token Url or an url in the service. I have absolutely no experience with scala, java or lift but I really want to get some(by doing this type of stuff). So what do you think is better(for me to learn, for lift and for you). I think it would be a good exercise. Once you're done with it we could probably review it and maybe it'll get its way into Lift if some committer doesn't implement it in the mean time, but regardless would be a good exercise for you. Also, what part of this abstraction(and how) is the one to set the consumer_key, secret_key and the request urls? InOAuthworld consumer secret and consumer key are somehow invariants as they impersonate a trusted service. So I would put them into a Scala object where user can just set these quantities from Boot. Finally; a uber noob question, what is the equivalent of curl(php) or urllib/urlopen(python) that i would use in the second option to actually make the http request to ther other site? I think its a servlet but some trivial example on this would really help me =) You can just use HttpUrlConnection, or Apache Http client. On Jun 21, 7:18 am, marius d. marius.dan...@gmail.com wrote: OAuthis not implemented yet in Lift still the project folder is there. I think Dave wanted to put it there but never got the chance to add it. Br's, Marius On Jun 21, 9:29 am, DFectuoso santiago1...@gmail.com wrote: Im trying to integrateOAuth(with twitter) in one of my projects... and i saw the lift-oauth, but i cant find the code, documentation or examples around this module; so i guess either its somewhere else or people is doing their twitter integrations with other class(maybe java)...
[Lift] Re: Can't embed a snippet
I've added an issue for this. On Wed, Jun 24, 2009 at 9:49 AM, David Pollak feeder.of.the.be...@gmail.com wrote: We should probably have a lift:dont_ignore/ tag to surround stuff like this and to complement the lift:ignore/ tag. Anyone want to add that snippet? On Wed, Jun 24, 2009 at 8:36 AM, Derek Chen-Becker dchenbec...@gmail.comwrote: Yes. Since it's a full template and not a fragment (using lift:surround /) it has to conform to normal XML rules. In particular, XML can only have one root element. Derek On Wed, Jun 24, 2009 at 9:08 AM, Nolan Darilek no...@thewordnerd.infowrote: On 06/24/2009 09:40 AM, Derek Chen-Becker wrote: Wait a second. I have plenty of templates that have multiple elements in them. What exactly is the problem you're seeing here? Using 1.1, I have the following in templates-hidden/welcome.html: h2Welcome/h2 pPut welcome details here./p Running mvn test gives me the following failure report: --- Test set: info.thewordnerd.therascribe.AppTest --- Tests run: 2, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.8 sec FAILURE! testXml(info.thewordnerd.therascribe.AppTest) Time elapsed: 1.474 sec FAILURE! junit.framework.AssertionFailedError: Malformed XML in 1 file: src/main/webapp/templates-hidden/welcome.html at junit.framework.Assert.fail(Assert.java:47) at info.thewordnerd.therascribe.AppTest.testXml(AppTest.scala:72) .. From the surefire report: system-outMalformed XML in 1 file: src/main/webapp/templates-hidden/welcome.html /system-out system-err:3:70: document must contain exactly one element ^ /system-err Surrounding it in a div fixes that. Must be a new addition in 1.1? -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Modify CRUDify XHTML
Well, it's the viewTemplate method, but it's supposed to return a NodeSeq, so if you're pulling from a file you'll need to do the file load yourself. You can do that with LiftRules.loadResourceAsXml: ... override def viewTemplate = LiftRules.loadResourceAsXml(foo) openOr pError loading template/p ... Derek On Wed, Jun 24, 2009 at 11:10 AM, Peter Robinett pe...@bubblefoundry.comwrote: Hi all, I'm using CRUDify on one of my models and I'd like to display some additional data on the view template. I believe that I need to override one of the model definitions with some sort of reference to my own XHTML file. Which one? _viewTemplate? Or perhaps the viewTemplate method? Thanks, Peter Robinett --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Another backtrace on reload
I had the same problem a while ago. I'm not sure if I fixed it then, but I think it had to do with the db still being open possibly. When the code changes does the servlet get undeployed? You might need to run derby in server mode. Lately I've been launching jetty without maven, and to get it to reload eclipse calls an ant script that touches the context.xml. I'm using h2 in tcp mode. Another option is JavaRebel which often obviates the need to redeploy. Sorry I can't help you better--I'm interested in any more information there is about this too. - David Pollakfeeder.of.the.be...@gmail.com wrote: I won't have a chance to look at it until next week, but maybe somebody else could step in here and help. On Wed, Jun 24, 2009 at 7:16 AM, Nolan Darilek no...@thewordnerd.infowrote: On 06/24/2009 08:54 AM, David Pollak wrote: Are you using JNDI or your own connection manager to connect to the RDBMS? I'm new to this, but I'm guessing the latter. In any case, I haven't touched whatever values the snapshot sets up in Boot.scala, nor have I set any properties, so it's stock Derby. -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Modify CRUDify XHTML
On 24 Jun 2009, Peter Robinett wrote: Hi all, I'm using CRUDify on one of my models and I'd like to display some additional data on the view template. I believe that I need to override one of the model definitions with some sort of reference to my own XHTML file. Which one? _viewTemplate? Or perhaps the viewTemplate method? If you look at the source to CRUDify, you'll see def viewTemplate(): NodeSeq = pageWrapper(_viewTemplate) where def pageWrapper(body: NodeSeq): NodeSeq = lift:surround with=default at=content { body } /lift:surround def _viewTemplate = lift:crud.view table id={viewId} class={viewClass} crud:row tr tdcrud:name//td tdcrud:value//td /tr /crud:row /table /lift:crud.view So the simplest thing is to override _viewTemplate with something similar to the above. This should be done on the companion objects where CRUDify is mixed in /Jeppe --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Can't embed a snippet
Perhaps something a touch more intuitive like lift:template/? It would feel odd to have to tell lift not to ignore stuff. Kris On Wed, Jun 24, 2009 at 9:49 AM, David Pollakfeeder.of.the.be...@gmail.com wrote: We should probably have a lift:dont_ignore/ tag to surround stuff like this and to complement the lift:ignore/ tag. Anyone want to add that snippet? On Wed, Jun 24, 2009 at 8:36 AM, Derek Chen-Becker dchenbec...@gmail.com wrote: Yes. Since it's a full template and not a fragment (using lift:surround /) it has to conform to normal XML rules. In particular, XML can only have one root element. Derek On Wed, Jun 24, 2009 at 9:08 AM, Nolan Darilek no...@thewordnerd.info wrote: On 06/24/2009 09:40 AM, Derek Chen-Becker wrote: Wait a second. I have plenty of templates that have multiple elements in them. What exactly is the problem you're seeing here? Using 1.1, I have the following in templates-hidden/welcome.html: h2Welcome/h2 pPut welcome details here./p Running mvn test gives me the following failure report: --- Test set: info.thewordnerd.therascribe.AppTest --- Tests run: 2, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.8 sec FAILURE! testXml(info.thewordnerd.therascribe.AppTest) Time elapsed: 1.474 sec FAILURE! junit.framework.AssertionFailedError: Malformed XML in 1 file: src/main/webapp/templates-hidden/welcome.html at junit.framework.Assert.fail(Assert.java:47) at info.thewordnerd.therascribe.AppTest.testXml(AppTest.scala:72) .. From the surefire report: system-outMalformed XML in 1 file: src/main/webapp/templates-hidden/welcome.html /system-out system-err:3:70: document must contain exactly one element ^ /system-err Surrounding it in a div fixes that. Must be a new addition in 1.1? -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Stax
Anyone know what kind of pricing they have? Do they have a free level like GAE? On Wed, Jun 24, 2009 at 12:43 PM, David Pollak feeder.of.the.be...@gmail.com wrote: On Wed, Jun 24, 2009 at 9:02 AM, Timothy Perrett timo...@getintheloop.euwrote: Agreed - this does really look very good... DPP, do you know how they are doing the generation of applications? I guess they must have some templating system and im just wondering if its something like our existing archetypes and if they could be modified to become stax compatible or whatever. I don't know, but this is a good question to ask them. Cheers, Tim On Jun 24, 3:03 pm, marius d. marius.dan...@gmail.com wrote: Would be neat to have a Lift application template when creating a new stax app. And the fact they are using Amazon EC2 is really great. Br's, Marius On Jun 24, 4:53 pm, David Pollak feeder.of.the.be...@gmail.com wrote: Folks, The folks in the ESME project have been hosting demo versions of ESME onhttp://stax.net/ I had the pleasure of speaking with the CEO of Stax yesterday. I really like his vision of where he wants to take Stax. Plus, I think that Stax offers everything that GAE offers plus a lot more flexibility and potential future growth. One of the things I'm not so good with is figuring out the details of what is needed for a given technology to be useful for an audience as broad as the Lift community... I don't know what kinds of things are necessary to have on the toolchain. Could a few of you play with Stax and put together a list of stuff you'd like to see in Stax with respect to Lift. Having that list will help guide the Stax folks to making Lift support even better. Thanks, David -- Lift, the simply functional web frameworkhttp://liftweb.net Beginning Scalahttp://www.apress.com/book/view/1430219890 Follow me:http://twitter.com/dpp Git some:http://github.com/dpp -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Modify CRUDify XHTML
How would you customize the edit view, say to allow editing all child entities on the same screen? On Wed, Jun 24, 2009 at 2:01 PM, Jeppe Nejsum Madsen je...@ingolfs.dkwrote: On 24 Jun 2009, Peter Robinett wrote: Hi all, I'm using CRUDify on one of my models and I'd like to display some additional data on the view template. I believe that I need to override one of the model definitions with some sort of reference to my own XHTML file. Which one? _viewTemplate? Or perhaps the viewTemplate method? If you look at the source to CRUDify, you'll see def viewTemplate(): NodeSeq = pageWrapper(_viewTemplate) where def pageWrapper(body: NodeSeq): NodeSeq = lift:surround with=default at=content { body } /lift:surround def _viewTemplate = lift:crud.view table id={viewId} class={viewClass} crud:row tr tdcrud:name//td tdcrud:value//td /tr /crud:row /table /lift:crud.view So the simplest thing is to override _viewTemplate with something similar to the above. This should be done on the companion objects where CRUDify is mixed in /Jeppe --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Stax
They will have a free level On Jun 24, 2009 11:46 AM, Naftoli Gugenheim naftoli...@gmail.com wrote: Anyone know what kind of pricing they have? Do they have a free level like GAE? On Wed, Jun 24, 2009 at 12:43 PM, David Pollak feeder.of.the.be...@gmail.com wrote: On Wed, Jun 24, 2009 at 9:02 AM, Timothy Perrett timo...@getintheloop.eu wrote:A... Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.c... --~--~-~--~~~---~--~~ You received this message because you are sub... --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Stax
David, Cool. About 6 weeks ago i started down the path of evaluating them, but saw no free service and stopped; and then the GAE noise began. Best wishes, --greg On Wed, Jun 24, 2009 at 12:08 PM, David Pollak feeder.of.the.be...@gmail.com wrote: They will have a free level On Jun 24, 2009 11:46 AM, Naftoli Gugenheim naftoli...@gmail.com wrote: Anyone know what kind of pricing they have? Do they have a free level like GAE? On Wed, Jun 24, 2009 at 12:43 PM, David Pollak feeder.of.the.be...@gmail.com wrote: On Wed, Jun 24, 2009 at 9:02 AM, Timothy Perrett timo...@getintheloop.eu wrote:A... Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.c... -- L.G. Meredith Managing Partner Biosimilarity LLC 1219 NW 83rd St Seattle, WA 98117 +1 206.650.3740 http://biosimilarity.blogspot.com --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Stax
Tim Nelson a écrit : [...] I did install their SDK and from what I can tell it's basically some Groovy scripts that use Ant + Ivy. Gradle perhaps ? http://www.gradle.org/ -- Francois Armand http://fanf42.blogspot.com --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] New mapper class: MappedEnumString
Hi, A while ago, I asked if it was possible to use something like MappedEnum and have some sensible values inserted into the database instead of integers. I got the feeling this was not the case, so I've created MappedEnumString (attached) which maps Enumerations into string values. Example: object TestTypes extends Enumeration { val Unknown = new Val(0,??) val Item1 = new Val(XX) val Item2 = new Val(YY) } object test extends MappedEnumString(this, TestTypes, 2) This will store the values, ??, XX or YY in the db. For display purposes, it will by default lookup the resource values TestTypes.??, TestTypes.XX, TestTypes.YY You can also calculate the displayed values: object test2 extends MappedEnumString(this, TestTypes, 2) { override def _valueToDisplayString(v:Enumeration#Value) = v match { case TestTypes.Item1 = Item1Display case TestTypes.Item2 = Item2Display case _ = Unknown x ItemDisplay } } I'm by no means a Scala/Lift expert so I may have overlooked stuff, so feel free to comment :-) /Jeppe --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~--- MappedEnumString.scala Description: MappedEnumString.scala
[Lift] Re: Stax
I think they use Gant. http://gant.codehaus.org/ On Wed, Jun 24, 2009 at 3:10 PM, fan...@gmail.com fan...@gmail.com wrote: Tim Nelson a écrit : [...] I did install their SDK and from what I can tell it's basically some Groovy scripts that use Ant + Ivy. Gradle perhaps ? http://www.gradle.org/ -- Francois Armand http://fanf42.blogspot.com --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Anyone working on the flot widget?
Hi Jeppe Great to see you are interested in the flot widget. My current to-do list for the flot widget, is: - create more Lift JsExp and JsCmd to modify a already displayed flot graph. They should be used in AJAX and Comet applications - update to a more recent version of the javascrrit widget - create the test demo app, - make the creation of FlotOptions, FlotLinesOptions, etc, less verbose. I hope that Scala 2.8 Named and Default Arguments will help. - create a high level mechanism to display Lift's Record I appreciate any help. Francois On Jun 24, 4:49 am, Jeppe Nejsum Madsen je...@ingolfs.dk wrote: On 24 Jun 2009, Timothy Perrett wrote: I've not spoken with Francois for some time, but I'll ask him next time he's online if he's able to make changes to the flot stuff. He's based in Chilli so should be online later on. Thanks. I'm more than willing to spend some time on this (and share the results :-) since we need it, but having the original author on board would be most helpful. /Jeppe --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: New mapper class: MappedEnumString
Looks very nice. One thing I'm wondering, what if I wanted the displayed value outside of the mapper, such as TestTypes.Item1.displayValue. Would you use an implicit conversion to provide this or is the display value conceptually always part of a mapper object. I have a rough implementation called EnumWithDescription, that wraps (not extends) an Enumeration and provides a description method on the enumeration value without using an implicit. I'm wondering if it might be useful to combine your approach and mine? cheers Oliver On Thu, Jun 25, 2009 at 6:39 AM, Jeppe Nejsum Madsen je...@ingolfs.dkwrote: Hi, A while ago, I asked if it was possible to use something like MappedEnum and have some sensible values inserted into the database instead of integers. I got the feeling this was not the case, so I've created MappedEnumString (attached) which maps Enumerations into string values. Example: object TestTypes extends Enumeration { val Unknown = new Val(0,??) val Item1 = new Val(XX) val Item2 = new Val(YY) } object test extends MappedEnumString(this, TestTypes, 2) This will store the values, ??, XX or YY in the db. For display purposes, it will by default lookup the resource values TestTypes.??, TestTypes.XX, TestTypes.YY You can also calculate the displayed values: object test2 extends MappedEnumString(this, TestTypes, 2) { override def _valueToDisplayString(v:Enumeration#Value) = v match { case TestTypes.Item1 = Item1Display case TestTypes.Item2 = Item2Display case _ = Unknown x ItemDisplay } } I'm by no means a Scala/Lift expert so I may have overlooked stuff, so feel free to comment :-) /Jeppe --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Is Hudson Stuck? 6/24
Is this the correct URL to check on the status of the Hudson build? If so, is it stuck? --Bryan --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Is Hudson Stuck? 6/24
I'm using http://hudson.scala-tools.org/job/Lift/. On Jun 24, 9:08 pm, Bryan germ...@gmail.com wrote: Is this the correct URL to check on the status of the Hudson build? If so, is it stuck? --Bryan --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Stax
I was able to get the latest lift-example application deployed without a problem: http://helloworld.hoffrocket.staxapps.net/. It's running against a mysql DB that they're hosting, not h2. I got an nginx 502 gateway down with a more substantial app, but their log files were all blank, so I have no idea what the problem was. Their deployment mechanism is war/ear based (ear built locally, then uploaded). It would be cool if they supported standard mvn layouts and could just build your war from source. I'm on a 512kb max upload and lift-example took 5 minutes to deploy. - Jon On Jun 24, 4:21 pm, Tim Nelson tnell...@gmail.com wrote: I think they use Gant.http://gant.codehaus.org/ On Wed, Jun 24, 2009 at 3:10 PM, fan...@gmail.com fan...@gmail.com wrote: Tim Nelson a écrit : [...] I did install their SDK and from what I can tell it's basically some Groovy scripts that use Ant + Ivy. Gradle perhaps ?http://www.gradle.org/ -- Francois Armand http://fanf42.blogspot.com --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: JPA and auto generation of id
Thanks for all the answers guys. I managed to fix the id problem, I needed the Hibernate specific class GenericGenerator to fix it, which of cource is less pretty then using only JPA. Someone has an example of how to make it work with MySql and only JPA annotations? Current version: @Entity class Scene { @Id @GenericGenerator{val name=hibernate-increment, val strategy=increment} @GeneratedValue{val strategy = GenerationType.SEQUENCE, val generator = hibernate-increment} var id : Long = _ @Column{val unique = true, val nullable = false} var ordering : Int = _ @Column{val unique = true, val nullable = false} var name : String = @ManyToOne{val optional = false} var storyBoard : StoryBoard = _ } However, now I get an org.hibernate.PropertyValueException: not-null property references a null or transient value: model.Scene.storyBoard :-s I tried a lot of things already, the corresponding StoryBoard is saved and not null, so I guess it has to be transient. Merging the StoryBoard however still gives the same error.. I tried to get JPA and Lift working together in the same way as in the JPADemo example.. Is it the use of MySql which prevents the example from working for me? regards, David On 23 jun, 00:54, Derek Chen-Becker dchenbec...@gmail.com wrote: Also, what does the schema for the entity's table look like? On Mon, Jun 22, 2009 at 4:54 PM, Derek Chen-Becker dchenbec...@gmail.comwrote: Mind posting the snippet of code where you're saving the instance? A merge should interpret a null ID as a fresh instance, and a persist should just save it. Derek On Mon, Jun 22, 2009 at 1:50 PM, David Persons dhwpers...@gmail.comwrote: I am using MySql (5). After setting the hibernate.dialect to org.hibernate.dialect.MySQLDialect in my persistence.xml file, I get a org.hibernate.AssertionFailure: null id :-s cheers On 22 jun, 19:18, Derek Chen-Becker dchenbec...@gmail.com wrote: That's not accurate, at least with Hibernate. By putting the annotations on vars, the compiler ends up putting them on the internal fields, which then forces Hibernate into a field-based persistence model and not a getter/setter based one. The SQLGrammarException is most likely what the other people have said. If you're in Oracle or PostgreSQL, for instance, you need a sequence set up for the auto identity model. What database are you using? Derek On Mon, Jun 22, 2009 at 8:54 AM, Eric Bowman ebow...@boboco.ie wrote: David Persons wrote: Hello guys, I get a org.hibernate.exception.SQLGrammarException: could not get or update next value error everytime I try to save the following Entity: @Entity class Scene { @Id @GeneratedValue(){val strategy = GenerationType.AUTO} var id : Long = _ @Column{val unique = true, val nullable = false} var ordering : Int = _ @Column{val unique = true, val nullable = false} var name : String = @ManyToOne{val optional = false} var storyBoard : StoryBoard = _ } You almost certainly need some scala.reflect.BeanProperty annotations on your fields. cheers, Eric -- Eric Bowman Boboco Ltd ebow...@boboco.ie http://www.boboco.ie/ebowman/pubkey.pgp +35318394189/+353872801532 http://www.boboco.ie/ebowman/pubkey.pgp%0A+35318394189/+353872801532 --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: JPA and auto generation of id
Try upgrading your hibernate version from 3.3.1.ga to 3.3.2.GA. Derek, can you look into upgrading the archetype to this release as well? I recall 3.3.1.ga having some packaging issues. --Bryan On Wed, Jun 24, 2009 at 6:29 PM, David Personsdhwpers...@gmail.com wrote: Thanks for all the answers guys. I managed to fix the id problem, I needed the Hibernate specific class GenericGenerator to fix it, which of cource is less pretty then using only JPA. Someone has an example of how to make it work with MySql and only JPA annotations? Current version: @Entity class Scene { �...@id �...@genericgenerator{val name=hibernate-increment, val strategy=increment} �...@generatedvalue{val strategy = GenerationType.SEQUENCE, val generator = hibernate-increment} var id : Long = _ �...@column{val unique = true, val nullable = false} var ordering : Int = _ �...@column{val unique = true, val nullable = false} var name : String = �...@manytoone{val optional = false} var storyBoard : StoryBoard = _ } However, now I get an org.hibernate.PropertyValueException: not-null property references a null or transient value: model.Scene.storyBoard :-s I tried a lot of things already, the corresponding StoryBoard is saved and not null, so I guess it has to be transient. Merging the StoryBoard however still gives the same error.. I tried to get JPA and Lift working together in the same way as in the JPADemo example.. Is it the use of MySql which prevents the example from working for me? regards, David On 23 jun, 00:54, Derek Chen-Becker dchenbec...@gmail.com wrote: Also, what does the schema for the entity's table look like? On Mon, Jun 22, 2009 at 4:54 PM, Derek Chen-Becker dchenbec...@gmail.comwrote: Mind posting the snippet of code where you're saving the instance? A merge should interpret a null ID as a fresh instance, and a persist should just save it. Derek On Mon, Jun 22, 2009 at 1:50 PM, David Persons dhwpers...@gmail.comwrote: I am using MySql (5). After setting the hibernate.dialect to org.hibernate.dialect.MySQLDialect in my persistence.xml file, I get a org.hibernate.AssertionFailure: null id :-s cheers On 22 jun, 19:18, Derek Chen-Becker dchenbec...@gmail.com wrote: That's not accurate, at least with Hibernate. By putting the annotations on vars, the compiler ends up putting them on the internal fields, which then forces Hibernate into a field-based persistence model and not a getter/setter based one. The SQLGrammarException is most likely what the other people have said. If you're in Oracle or PostgreSQL, for instance, you need a sequence set up for the auto identity model. What database are you using? Derek On Mon, Jun 22, 2009 at 8:54 AM, Eric Bowman ebow...@boboco.ie wrote: David Persons wrote: Hello guys, I get a org.hibernate.exception.SQLGrammarException: could not get or update next value error everytime I try to save the following Entity: @Entity class Scene { @Id @GeneratedValue(){val strategy = GenerationType.AUTO} var id : Long = _ @Column{val unique = true, val nullable = false} var ordering : Int = _ @Column{val unique = true, val nullable = false} var name : String = @ManyToOne{val optional = false} var storyBoard : StoryBoard = _ } You almost certainly need some scala.reflect.BeanProperty annotations on your fields. cheers, Eric -- Eric Bowman Boboco Ltd ebow...@boboco.ie http://www.boboco.ie/ebowman/pubkey.pgp +35318394189/+353872801532 http://www.boboco.ie/ebowman/pubkey.pgp%0A+35318394189/+353872801532 --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: JPA and auto generation of id
David, The GenericGenerator annotation was the solution i found worked for me for Hibernate 3.3.2GA, and the one i suggested you investigate. i'm glad you've gotten past that one. Best wishes, --greg On Wed, Jun 24, 2009 at 3:29 PM, David Persons dhwpers...@gmail.com wrote: Thanks for all the answers guys. I managed to fix the id problem, I needed the Hibernate specific class GenericGenerator to fix it, which of cource is less pretty then using only JPA. Someone has an example of how to make it work with MySql and only JPA annotations? Current version: @Entity class Scene { @Id @GenericGenerator{val name=hibernate-increment, val strategy=increment} @GeneratedValue{val strategy = GenerationType.SEQUENCE, val generator = hibernate-increment} var id : Long = _ @Column{val unique = true, val nullable = false} var ordering : Int = _ @Column{val unique = true, val nullable = false} var name : String = @ManyToOne{val optional = false} var storyBoard : StoryBoard = _ } However, now I get an org.hibernate.PropertyValueException: not-null property references a null or transient value: model.Scene.storyBoard :-s I tried a lot of things already, the corresponding StoryBoard is saved and not null, so I guess it has to be transient. Merging the StoryBoard however still gives the same error.. I tried to get JPA and Lift working together in the same way as in the JPADemo example.. Is it the use of MySql which prevents the example from working for me? regards, David On 23 jun, 00:54, Derek Chen-Becker dchenbec...@gmail.com wrote: Also, what does the schema for the entity's table look like? On Mon, Jun 22, 2009 at 4:54 PM, Derek Chen-Becker dchenbec...@gmail.comwrote: Mind posting the snippet of code where you're saving the instance? A merge should interpret a null ID as a fresh instance, and a persist should just save it. Derek On Mon, Jun 22, 2009 at 1:50 PM, David Persons dhwpers...@gmail.com wrote: I am using MySql (5). After setting the hibernate.dialect to org.hibernate.dialect.MySQLDialect in my persistence.xml file, I get a org.hibernate.AssertionFailure: null id :-s cheers On 22 jun, 19:18, Derek Chen-Becker dchenbec...@gmail.com wrote: That's not accurate, at least with Hibernate. By putting the annotations on vars, the compiler ends up putting them on the internal fields, which then forces Hibernate into a field-based persistence model and not a getter/setter based one. The SQLGrammarException is most likely what the other people have said. If you're in Oracle or PostgreSQL, for instance, you need a sequence set up for the auto identity model. What database are you using? Derek On Mon, Jun 22, 2009 at 8:54 AM, Eric Bowman ebow...@boboco.ie wrote: David Persons wrote: Hello guys, I get a org.hibernate.exception.SQLGrammarException: could not get or update next value error everytime I try to save the following Entity: @Entity class Scene { @Id @GeneratedValue(){val strategy = GenerationType.AUTO} var id : Long = _ @Column{val unique = true, val nullable = false} var ordering : Int = _ @Column{val unique = true, val nullable = false} var name : String = @ManyToOne{val optional = false} var storyBoard : StoryBoard = _ } You almost certainly need some scala.reflect.BeanProperty annotations on your fields. cheers, Eric -- Eric Bowman Boboco Ltd ebow...@boboco.ie http://www.boboco.ie/ebowman/pubkey.pgp +35318394189/+353872801532 http://www.boboco.ie/ebowman/pubkey.pgp%0A+35318394189/+353872801532 -- L.G. Meredith Managing Partner Biosimilarity LLC 1219 NW 83rd St Seattle, WA 98117 +1 206.650.3740 http://biosimilarity.blogspot.com --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Stax
Jon, Sweet! Best wishes, --greg On Wed, Jun 24, 2009 at 3:11 PM, jon jonhoff...@gmail.com wrote: I was able to get the latest lift-example application deployed without a problem: http://helloworld.hoffrocket.staxapps.net/. It's running against a mysql DB that they're hosting, not h2. I got an nginx 502 gateway down with a more substantial app, but their log files were all blank, so I have no idea what the problem was. Their deployment mechanism is war/ear based (ear built locally, then uploaded). It would be cool if they supported standard mvn layouts and could just build your war from source. I'm on a 512kb max upload and lift-example took 5 minutes to deploy. - Jon On Jun 24, 4:21 pm, Tim Nelson tnell...@gmail.com wrote: I think they use Gant.http://gant.codehaus.org/ On Wed, Jun 24, 2009 at 3:10 PM, fan...@gmail.com fan...@gmail.com wrote: Tim Nelson a écrit : [...] I did install their SDK and from what I can tell it's basically some Groovy scripts that use Ant + Ivy. Gradle perhaps ?http://www.gradle.org/ -- Francois Armand http://fanf42.blogspot.com -- L.G. Meredith Managing Partner Biosimilarity LLC 1219 NW 83rd St Seattle, WA 98117 +1 206.650.3740 http://biosimilarity.blogspot.com --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Getting Username and Password from URL of form hxxp://user:passw...@foo.org
I can't seem to find anyway to get to those two values. I've been searching all over the request class/object and no luck. I'm writing a RESTful web service that uses basic auth and for some reason jQuery likes to send things in the above mentioned format (http://user:passw...@foo.org). I've tried to fix that on the Javascript side but I couldn't get anything to work. So instead I decided on the service to recognize either the header style or the URL style of passing the login info. Sounded simple enough, until I couldn't find how to get at that/those strings.. Any help would be greatly appreciated.. Alan Mortensen --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---
[Lift] Re: Is Hudson Stuck? 6/24
I stopped the stuck job. On Wed, Jun 24, 2009 at 7:09 PM, Bryan germ...@gmail.com wrote: I'm using http://hudson.scala-tools.org/job/Lift/. On Jun 24, 9:08 pm, Bryan germ...@gmail.com wrote: Is this the correct URL to check on the status of the Hudson build? If so, is it stuck? --Bryan --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~--~~~~--~~--~--~---