[Lift] Re: MappedDateTime - Do we have a Date? Or is it a timestamp?
Thanks Jorge! We just started using JodaTime and it's definitely everything we wanted from a Time API. Good Find!!! On Tue, Mar 31, 2009 at 8:31 PM, Kris Nuttycombe kris.nuttyco...@gmail.comwrote: I'm also using joda-time, and very pleased with it. In fact, I use it in my Lift project - via JPA with the provided Hibernate extensions for mapping of DateTime, Period, etc. Kris On Tue, Mar 31, 2009 at 1:54 PM, TylerWeir tyler.w...@gmail.com wrote: For an internal project I used JodaTime, twas a dream. I have switched to using MappedLong along with Unix time for dates now. ( hooray for ancedotes! ) On Mar 31, 3:21 pm, Jorge Ortiz jorge.or...@gmail.com wrote: I was on IRC trying to help Clemens with this. The name (MappedDateTime), targetSQLType (java.sql.Types.TIMESTAMP), and type (extends MappedField[java.util.Date, _]) of this class suggests millisecond precision (java.sql.Timestamp and java.util.Date have millisecond precision). However, methods jdbcFriendly and real_convertToJDBCFriendly use java.sql.Date, which has only day precision. If the intent is day precision, then calling the class DateTime is probably misleading. If the intent is millisecond precision, then we have a bug. rant Which brings up the larger issue of the brokennes of the Java Date/Time API. Java 7 will hopefully be getting a newer/better one, but for those of us stuck on Java 5/6, Joda Time is much preferable to the native Date/Time API. It more clearly represents foundational concepts like instants (March 31, 2009 at 12:15.000pm UTC), partials (March 3 or 7:15pm), intervals (the space between two instants), durations (1000 milliseconds), periods (1 month), and chronologies (calendar systems). It's also completely immutable (oh, you didn't know java.util.Calendar isn't thread-safe? you're lucky to have never had to track down that bug). /rant Sigh... it's probably too big of a breaking change to rip out Java Date/Time from Mapper and Helpers and replace it with Joda Time, but one can dream... --j On Tue, Mar 31, 2009 at 11:58 AM, Clemens Oertel clemens.oer...@gmail.comwrote: While trying to figure out why my MappedDateTime fields get stored in the DB with all the time info set to 0, I noticed the following: MappedDateTime (v. 1.0) claims to be a TimeStamp: def targetSQLType = Types.TIMESTAMP. However, it uses java.sql.Date for its JDBC- friendly converted version, not java.sql.TimeStamp. If I read the java.sql.Date documentation correctly, java.sql.Date does set all time information to 0, since the SQL DATE type only stores dates, by no times. Any comment whether this might have something to do with me losing my time would be appreciated. Best, Clemens --~--~-~--~~~---~--~~ 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: MappedDateTime - Do we have a Date? Or is it a timestamp?
On Tue, Mar 31, 2009 at 11:10 PM, Timothy Perrett timo...@getintheloop.euwrote: chronologies (calendar systems). It's also completely immutable (oh, you didn't know java.util.Calendar isn't thread-safe? you're lucky to have never had to track down that bug). LOL!!! Its not thread safe!? Thats somewhat of an oversight isnt it... java.text.Format horror SimpleDateFormat horror... -- Viktor Klang Senior Systems Analyst --~--~-~--~~~---~--~~ 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: MappedDateTime - Do we have a Date? Or is it a timestamp?
Well, I guess this bug needs updated: http://liftweb.lighthouseapp.com/projects/26102-lift/tickets/28-mappeddatetime-does-not-store-time-portion-in-derby-10420 I would vote for JodaTime. Having written some scheduling apps in Java all I can say about java.util.{Date,Calender} is WTF? Derek On Tue, Mar 31, 2009 at 12:58 PM, Clemens Oertel clemens.oer...@gmail.comwrote: While trying to figure out why my MappedDateTime fields get stored in the DB with all the time info set to 0, I noticed the following: MappedDateTime (v. 1.0) claims to be a TimeStamp: def targetSQLType = Types.TIMESTAMP. However, it uses java.sql.Date for its JDBC- friendly converted version, not java.sql.TimeStamp. If I read the java.sql.Date documentation correctly, java.sql.Date does set all time information to 0, since the SQL DATE type only stores dates, by no times. Any comment whether this might have something to do with me losing my time would be appreciated. Best, Clemens --~--~-~--~~~---~--~~ 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: Menu widget
Based on this part of the stack trace: java.lang.IllegalArgumentException: Illegal group reference at java.util.regex.Matcher.appendReplacement(Matcher.java:713) at com.yahoo.platform.yui.compressor.CssCompressor.compress (CssCompresso r.java:78) I'm guessing that it's unhappy with one of your CSS files. Derek On Tue, Mar 31, 2009 at 2:48 PM, DavidV david.v.villa...@gmail.com wrote: I would like to use this new MenuWidget, so I got the source code from GitHub and put it into my application as a snippet. I also downloaded all of the necessary superfish .css and .js files from the superfish website and put those in local sub-directories of the src/main/ webapp folder. When I try to compile the code in maven, however, I get the following error. C:\Source\trunk\eclipse\testLiftmvn clean jetty:run [INFO] Scanning for projects... [INFO] Searching repository for plugin with prefix: 'jetty'. [INFO] [INFO] Building testLift [INFO]task-segment: [clean, jetty:run] [INFO] [INFO] [clean:clean] [INFO] Deleting directory C:\Source\trunk\eclipse\testLift\target [INFO] Preparing jetty:run [INFO] [resources:resources] [INFO] Using default encoding to copy filtered resources. [INFO] [yuicompressor:compress {execution: default}] [INFO] jquery.hoverIntent.js (4637b) - jquery.hoverIntent.js (0b)[0%] [INFO] superfish.js (3837b) - superfish.js (0b)[0%] [INFO] entryform.css (11417b) - entryform.css (10202b)[89%] [INFO] print.css (1341b) - print.css (821b)[61%] [INFO] [ERROR] FATAL ERROR [INFO] [INFO] Illegal group reference [INFO] [INFO] Trace java.lang.IllegalArgumentException: Illegal group reference at java.util.regex.Matcher.appendReplacement(Matcher.java:713) at com.yahoo.platform.yui.compressor.CssCompressor.compress (CssCompresso r.java:78) at net.sf.alchim.mojo.yuicompressor.YuiCompressorMojo.processFile(YuiCom pressorMojo.java:182) at net.sf.alchim.mojo.yuicompressor.MojoSupport.processDir (MojoSupport.j ava:151) at net.sf.alchim.mojo.yuicompressor.MojoSupport.execute (MojoSupport.java :105) at org.apache.maven.plugin.DefaultPluginManager.executeMojo (DefaultPlugi nManager.java:451) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa ultLifecycleExecutor.java:558) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLi fecycle(DefaultLifecycleExecutor.java:499) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.forkProjectLifecy cle(DefaultLifecycleExecutor.java:924) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.forkLifecycle(Def aultLifecycleExecutor.java:767) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa ultLifecycleExecutor.java:529) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandalone Goal(DefaultLifecycleExecutor.java:512) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(Defau ltLifecycleExecutor.java:482) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHan dleFailures(DefaultLifecycleExecutor.java:330) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmen ts(DefaultLifecycleExecutor.java:291) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute (DefaultLi fecycleExecutor.java:142) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java: 336) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java: 129) at org.apache.maven.cli.MavenCli.main(MavenCli.java:287) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced (Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode (Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) [INFO] [INFO] Total time: 5 seconds [INFO] Finished at: Tue Mar 31 17:38:35 EDT 2009 [INFO] Final Memory: 17M/30M [INFO] Any ideas on how to prevent/fix this? Do I need to modify my .pom? Thanks, David On Mar 23,
[Lift] Re: A gap in my knowledge, JsCommands
On Wed, Apr 1, 2009 at 2:55 PM, Derek Chen-Becker dchenbec...@gmail.comwrote: It looks like it's missing a function call. Compare onclick=lift_ajaxHandler(... to onclick=(F687305521435R3K,lift_ajaxHandler I'm no JS guru, so that second one might be perfectly valid JS, but it looks weird to me. I'd recommend to stay away from referring to objects by reference instead of by id.. (all kinds of weird stuff can happen when you start to remove objects/have partial rendering) I.e. somefun('F687305521435R3K',lift_ajaxHandler) instead of somefun(F687305521435R3K,lift_ajaxHandler) (Note the single-quotes.) Derek On Tue, Mar 31, 2009 at 9:57 AM, TylerWeir tyler.w...@gmail.com wrote: I'm wading into an area that I'm a bit unfamiliar with and not sure if I'm running in a bug. Snippet code: class HelloWorld { def ajaxFunc1() : JsCmd = JsRaw(alert('Button1 clicked')) def ajaxFunc2(str: String) : JsCmd = { Log.info(Received + str) JsRaw(alert('Button2 clicked')) } def renderAjaxButtons(xhtml: NodeSeq): NodeSeq = { bind(ex, xhtml, button1 - SHtml.ajaxButton(Press Me, ajaxFunc1 _), button2 - buttonPress Me 2/button % (onclick - SHtml.ajaxCall(Str(Button-2), ajaxFunc2 _))) } } Which is in this template: lift:HelloWorld.renderAjaxButtons ex:button1 /br / ex:button2 /br / /lift:HelloWorld.renderAjaxButtons And is rendered thusly: button onclick=lift_ajaxHandler('F687305521434PIG=true', null, null); return false;Press Me/buttonbr / button onclick=(F687305521435R3K,lift_ajaxHandler ('F687305521435R3K=' + 'Button-2', null, null))Press Me 2/ buttonbr / Button 1 is find, but Button 2 causes FireBug to whine: F687305521435R3K is not defined onclick(click clientX=500, clientY=239)2 (line 2) [Break on this error] F687305521435R3K, lift_ajaxHandl...F687305521435R3K=Button-2, null, null); Does the second onclick look incorrect to you? -- Viktor Klang Senior Systems Analyst --~--~-~--~~~---~--~~ 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: A gap in my knowledge, JsCommands
Excellent, thanks Derek, Vik, I'm back on this today. On Apr 1, 9:03 am, Viktor Klang viktor.kl...@gmail.com wrote: On Wed, Apr 1, 2009 at 2:55 PM, Derek Chen-Becker dchenbec...@gmail.comwrote: It looks like it's missing a function call. Compare onclick=lift_ajaxHandler(... to onclick=(F687305521435R3K,lift_ajaxHandler I'm no JS guru, so that second one might be perfectly valid JS, but it looks weird to me. I'd recommend to stay away from referring to objects by reference instead of by id.. (all kinds of weird stuff can happen when you start to remove objects/have partial rendering) I.e. somefun('F687305521435R3K',lift_ajaxHandler) instead of somefun(F687305521435R3K,lift_ajaxHandler) (Note the single-quotes.) Derek On Tue, Mar 31, 2009 at 9:57 AM, TylerWeir tyler.w...@gmail.com wrote: I'm wading into an area that I'm a bit unfamiliar with and not sure if I'm running in a bug. Snippet code: class HelloWorld { def ajaxFunc1() : JsCmd = JsRaw(alert('Button1 clicked')) def ajaxFunc2(str: String) : JsCmd = { Log.info(Received + str) JsRaw(alert('Button2 clicked')) } def renderAjaxButtons(xhtml: NodeSeq): NodeSeq = { bind(ex, xhtml, button1 - SHtml.ajaxButton(Press Me, ajaxFunc1 _), button2 - buttonPress Me 2/button % (onclick - SHtml.ajaxCall(Str(Button-2), ajaxFunc2 _))) } } Which is in this template: lift:HelloWorld.renderAjaxButtons ex:button1 /br / ex:button2 /br / /lift:HelloWorld.renderAjaxButtons And is rendered thusly: button onclick=lift_ajaxHandler('F687305521434PIG=true', null, null); return false;Press Me/buttonbr / button onclick=(F687305521435R3K,lift_ajaxHandler ('F687305521435R3K=' + 'Button-2', null, null))Press Me 2/ buttonbr / Button 1 is find, but Button 2 causes FireBug to whine: F687305521435R3K is not defined onclick(click clientX=500, clientY=239)2 (line 2) [Break on this error] F687305521435R3K, lift_ajaxHandl...F687305521435R3K=Button-2, null, null); Does the second onclick look incorrect to you? -- Viktor Klang Senior Systems Analyst --~--~-~--~~~---~--~~ 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: class hierarchy with models
Hi Tobias. I am a newbie too, Hence wait for more solid support. Nevertheless I made some investigate on how to describe a complex object model using Mapper. The short answer is that Mapper does not support inheritance and hence you cannot specilized the ToDo class. Period. Moreover in some topics in this group there were indication on limiting the use of Mapper for simple object models, preferring JPA integration for more complex structures or waiting for Record (Lift 1.1) to get the best from both world. After running throuh some examples I became addicted to some of Mapper's functionalities such as CRUDify and .toForm that at the beginning I was a little bit suspicious about (you know MVC purity and all this stuff). If limitations on relationship management could be easily overcome by manually developed helper functions, inheritance is definitely a different beast. But using traits it seems possible (even if a little bit tricky at the beginning) to build hierarchies (and with multiple inheritance too!). I suggest you to have a look to how the trait IdPK is implemented in Mapper.scala (and in general look at the scala code lift is made of, it is very insightful to both scala and lift). The only limitation is that when you arrive to concretize a class (and the related metaclass singleton) you cannot procede further with inheritance (it should be a leaf in your hierarchy tree). I posted an example some weeks ago you can have a look at just to understand what I am talking about (tht topic was : Using Traits in complex domain models )ards Regards beppe On Apr 1, 11:21 am, Tobias Daub hannes.flo...@gmx.li wrote: Hi There, I'm new to Scala and Lift and still feeling a little bit lost. In case of the ToDo example from the Getting started guide: Would it be possible to make a more specialized version of a ToDo item that inherits from the existing one? This is more a general question about inheritance from Lift models, because I've to design some more complex class hierarchy, where its really necessary to have stupid classes that can be specialized later on. Apply the same rules about inheritance, traits, etc. to Lift models, too. Can I do all the stuff that I can do with normal classes? Thanks alot! Tobias --~--~-~--~~~---~--~~ 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] lift-core jar in repo-releases does not contain classes
I just started the learning scala and lift and was trying out the ToDo example. It seems that the lift-core artifact jar in the maven repo, http://scala-tools.org/repo-releases, is empty. I used the lift-basic- archetype which uses lift-core-0.8 jar. But the jar only contains the META-INF folder. No classes. Same with the 1.0 jar as well. The 0.6 jar contains Does not contain any classes: http://scala-tools.org/repo-releases/net/liftweb/lift-core/0.8/ lift-core-0.8.jar 2008-Nov-24 23:39:511.4Kapplication/java-archive http://scala-tools.org/repo-releases/net/liftweb/lift-core/1.0/ lift-core-1.0.jar 2009-Feb-26 18:09:391.5Kapplication/java-archive Contains classes: Under http://scala-tools.org/repo-releases/net/liftweb/lift-core/0.6: lift-core-0.6.jar 2008-Nov-24 23:40:153.6Mapplication/java-archive Am I missing something? I know I haven't had my morning coffee yet. Thanks, Rosh http://blogs.plexibus.com http://www.twitter.com/ras_shadow --~--~-~--~~~---~--~~ 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-core jar in repo-releases does not contain classes
That's right. The lift-core.jar file has never contained any classes. It's a marker for Maven. lift-core depends on all the other Lift packages (e.g., lift-util, lift-webket, etc.) so these other packages are included in your project and they have classes in their jar files. On Wed, Apr 1, 2009 at 6:58 AM, Rosh jacknjill...@gmail.com wrote: I just started the learning scala and lift and was trying out the ToDo example. It seems that the lift-core artifact jar in the maven repo, http://scala-tools.org/repo-releases, is empty. I used the lift-basic- archetype which uses lift-core-0.8 jar. But the jar only contains the META-INF folder. No classes. Same with the 1.0 jar as well. The 0.6 jar contains Does not contain any classes: http://scala-tools.org/repo-releases/net/liftweb/lift-core/0.8/ lift-core-0.8.jar 2008-Nov-24 23:39:511.4K application/java-archive http://scala-tools.org/repo-releases/net/liftweb/lift-core/1.0/ lift-core-1.0.jar 2009-Feb-26 18:09:391.5K application/java-archive Contains classes: Under http://scala-tools.org/repo-releases/net/liftweb/lift-core/0.6: lift-core-0.6.jar 2008-Nov-24 23:40:153.6M application/java-archive Am I missing something? I know I haven't had my morning coffee yet. Thanks, Rosh http://blogs.plexibus.com http://www.twitter.com/ras_shadow -- 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: class hierarchy with models
Wow. Awesome answer! A couple of things. Some of the Mapper code is my earliest Scala attempts and other code is desperate attempts on my part to work around Scala's type system. Some of it is instructive, but other parts are just wrong and ugly. I'd suggest running in horror from any code that has asInstanceOf in it. I think there's also a lurking pattern in there someplace for a lazy val on the model instances that vends the manipulator logic instance that can be one of many subclasses of a base class (or trait) and that implements logic based on the contents of the model. I'd like to see some examples of class hierarchies for model objects... that might help me understand how to build such a pattern into Lift. Thanks, David On Wed, Apr 1, 2009 at 6:18 AM, Giuseppe Fogliazza g.foglia...@mcmspa.itwrote: Hi Tobias. I am a newbie too, Hence wait for more solid support. Nevertheless I made some investigate on how to describe a complex object model using Mapper. The short answer is that Mapper does not support inheritance and hence you cannot specilized the ToDo class. Period. Moreover in some topics in this group there were indication on limiting the use of Mapper for simple object models, preferring JPA integration for more complex structures or waiting for Record (Lift 1.1) to get the best from both world. After running throuh some examples I became addicted to some of Mapper's functionalities such as CRUDify and .toForm that at the beginning I was a little bit suspicious about (you know MVC purity and all this stuff). If limitations on relationship management could be easily overcome by manually developed helper functions, inheritance is definitely a different beast. But using traits it seems possible (even if a little bit tricky at the beginning) to build hierarchies (and with multiple inheritance too!). I suggest you to have a look to how the trait IdPK is implemented in Mapper.scala (and in general look at the scala code lift is made of, it is very insightful to both scala and lift). The only limitation is that when you arrive to concretize a class (and the related metaclass singleton) you cannot procede further with inheritance (it should be a leaf in your hierarchy tree). I posted an example some weeks ago you can have a look at just to understand what I am talking about (tht topic was : Using Traits in complex domain models )ards Regards beppe On Apr 1, 11:21 am, Tobias Daub hannes.flo...@gmx.li wrote: Hi There, I'm new to Scala and Lift and still feeling a little bit lost. In case of the ToDo example from the Getting started guide: Would it be possible to make a more specialized version of a ToDo item that inherits from the existing one? This is more a general question about inheritance from Lift models, because I've to design some more complex class hierarchy, where its really necessary to have stupid classes that can be specialized later on. Apply the same rules about inheritance, traits, etc. to Lift models, too. Can I do all the stuff that I can do with normal classes? Thanks alot! Tobias -- 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: A gap in my knowledge, JsCommands
Rewriting ajaxCall_* to incorporate Vik's idea fixes this: private def ajaxCall_*(jsCalcValue: JsExp, func: AFuncHolder): (String, JsExp) = { val (n, r) = fmapFunc(func)(name = (name, makeAjaxCall(JsRaw('+name+=' + +jsCalcValue.toJsCmd (' + n + ', r) } Thanks. On Apr 1, 9:37 am, TylerWeir tyler.w...@gmail.com wrote: Excellent, thanks Derek, Vik, I'm back on this today. On Apr 1, 9:03 am, Viktor Klang viktor.kl...@gmail.com wrote: On Wed, Apr 1, 2009 at 2:55 PM, Derek Chen-Becker dchenbec...@gmail.comwrote: It looks like it's missing a function call. Compare onclick=lift_ajaxHandler(... to onclick=(F687305521435R3K,lift_ajaxHandler I'm no JS guru, so that second one might be perfectly valid JS, but it looks weird to me. I'd recommend to stay away from referring to objects by reference instead of by id.. (all kinds of weird stuff can happen when you start to remove objects/have partial rendering) I.e. somefun('F687305521435R3K',lift_ajaxHandler) instead of somefun(F687305521435R3K,lift_ajaxHandler) (Note the single-quotes.) Derek On Tue, Mar 31, 2009 at 9:57 AM, TylerWeir tyler.w...@gmail.com wrote: I'm wading into an area that I'm a bit unfamiliar with and not sure if I'm running in a bug. Snippet code: class HelloWorld { def ajaxFunc1() : JsCmd = JsRaw(alert('Button1 clicked')) def ajaxFunc2(str: String) : JsCmd = { Log.info(Received + str) JsRaw(alert('Button2 clicked')) } def renderAjaxButtons(xhtml: NodeSeq): NodeSeq = { bind(ex, xhtml, button1 - SHtml.ajaxButton(Press Me, ajaxFunc1 _), button2 - buttonPress Me 2/button % (onclick - SHtml.ajaxCall(Str(Button-2), ajaxFunc2 _))) } } Which is in this template: lift:HelloWorld.renderAjaxButtons ex:button1 /br / ex:button2 /br / /lift:HelloWorld.renderAjaxButtons And is rendered thusly: button onclick=lift_ajaxHandler('F687305521434PIG=true', null, null); return false;Press Me/buttonbr / button onclick=(F687305521435R3K,lift_ajaxHandler ('F687305521435R3K=' + 'Button-2', null, null))Press Me 2/ buttonbr / Button 1 is find, but Button 2 causes FireBug to whine: F687305521435R3K is not defined onclick(click clientX=500, clientY=239)2 (line 2) [Break on this error] F687305521435R3K, lift_ajaxHandl...F687305521435R3K=Button-2, null, null); Does the second onclick look incorrect to you? -- Viktor Klang Senior Systems Analyst --~--~-~--~~~---~--~~ 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: class hierarchy with models
Hi, David, I can give you a good example of a class hierarchy that I use in my application (via JPA). In fact, it is a pair of coupled model hierarchies. The primary hierarchy is based in a class PaymentSource which has subclasses such as CreditCard, CheckingAcct, and PayPalAcct. This is then related to a class hierarchy PaymentSourceTransaction[T : PaymentSource]. There is an appropriate subclass (CreditCardTransaction extends PaymentSourceTransaction[CreditCard]) for each type of payment source, and then interfaces AuthTransaction, CaptureTransaction, CreditTransaction, and VoidTransaction with subclass implementations for each type of payment source. The model hierarchy ends up looking like this: PaymentSource - CreditCard - CheckingAcct - PayPalAcct PaymentSourceTransaction[T : PaymentSource] - CreditCardTransaction extends PaymentSourceTransaction[CreditCard] - CCAuthTransaction extends CreditCardTransaction with AuthTransaction ... - CheckingAcctTransaction extends PaymentSourceTransaction[CheckingAcct] - CheckingAuthTransaction extends CheckingAcctTransaction with AuthTransaction and so forth. Kris On Wed, Apr 1, 2009 at 8:17 AM, David Pollak feeder.of.the.be...@gmail.com wrote: Wow. Awesome answer! A couple of things. Some of the Mapper code is my earliest Scala attempts and other code is desperate attempts on my part to work around Scala's type system. Some of it is instructive, but other parts are just wrong and ugly. I'd suggest running in horror from any code that has asInstanceOf in it. I think there's also a lurking pattern in there someplace for a lazy val on the model instances that vends the manipulator logic instance that can be one of many subclasses of a base class (or trait) and that implements logic based on the contents of the model. I'd like to see some examples of class hierarchies for model objects... that might help me understand how to build such a pattern into Lift. Thanks, David On Wed, Apr 1, 2009 at 6:18 AM, Giuseppe Fogliazza g.foglia...@mcmspa.it wrote: Hi Tobias. I am a newbie too, Hence wait for more solid support. Nevertheless I made some investigate on how to describe a complex object model using Mapper. The short answer is that Mapper does not support inheritance and hence you cannot specilized the ToDo class. Period. Moreover in some topics in this group there were indication on limiting the use of Mapper for simple object models, preferring JPA integration for more complex structures or waiting for Record (Lift 1.1) to get the best from both world. After running throuh some examples I became addicted to some of Mapper's functionalities such as CRUDify and .toForm that at the beginning I was a little bit suspicious about (you know MVC purity and all this stuff). If limitations on relationship management could be easily overcome by manually developed helper functions, inheritance is definitely a different beast. But using traits it seems possible (even if a little bit tricky at the beginning) to build hierarchies (and with multiple inheritance too!). I suggest you to have a look to how the trait IdPK is implemented in Mapper.scala (and in general look at the scala code lift is made of, it is very insightful to both scala and lift). The only limitation is that when you arrive to concretize a class (and the related metaclass singleton) you cannot procede further with inheritance (it should be a leaf in your hierarchy tree). I posted an example some weeks ago you can have a look at just to understand what I am talking about (tht topic was : Using Traits in complex domain models )ards Regards beppe On Apr 1, 11:21 am, Tobias Daub hannes.flo...@gmx.li wrote: Hi There, I'm new to Scala and Lift and still feeling a little bit lost. In case of the ToDo example from the Getting started guide: Would it be possible to make a more specialized version of a ToDo item that inherits from the existing one? This is more a general question about inheritance from Lift models, because I've to design some more complex class hierarchy, where its really necessary to have stupid classes that can be specialized later on. Apply the same rules about inheritance, traits, etc. to Lift models, too. Can I do all the stuff that I can do with normal classes? Thanks alot! Tobias -- 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: lift-core jar in repo-releases does not contain classes
If lift-core doesn't contain any classes, could it be changed to a pom artifact type instead? Kris On Wed, Apr 1, 2009 at 8:09 AM, David Pollak feeder.of.the.be...@gmail.com wrote: That's right. The lift-core.jar file has never contained any classes. It's a marker for Maven. lift-core depends on all the other Lift packages (e.g., lift-util, lift-webket, etc.) so these other packages are included in your project and they have classes in their jar files. On Wed, Apr 1, 2009 at 6:58 AM, Rosh jacknjill...@gmail.com wrote: I just started the learning scala and lift and was trying out the ToDo example. It seems that the lift-core artifact jar in the maven repo, http://scala-tools.org/repo-releases, is empty. I used the lift-basic- archetype which uses lift-core-0.8 jar. But the jar only contains the META-INF folder. No classes. Same with the 1.0 jar as well. The 0.6 jar contains Does not contain any classes: http://scala-tools.org/repo-releases/net/liftweb/lift-core/0.8/ lift-core-0.8.jar 2008-Nov-24 23:39:51 1.4K application/java-archive http://scala-tools.org/repo-releases/net/liftweb/lift-core/1.0/ lift-core-1.0.jar 2009-Feb-26 18:09:39 1.5K application/java-archive Contains classes: Under http://scala-tools.org/repo-releases/net/liftweb/lift-core/0.6: lift-core-0.6.jar 2008-Nov-24 23:40:15 3.6M application/java-archive Am I missing something? I know I haven't had my morning coffee yet. Thanks, Rosh http://blogs.plexibus.com http://www.twitter.com/ras_shadow -- 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] [ANN] DEFUN09: Call for Talks Tutorials (co-located w/ ICFP09)
-- Forwarded message -- From: Matthew Fluet (ICFP Publicity Chair) icfp.public...@googlemail.com Date: Wed, Apr 1, 2009 at 8:38 AM Subject: [bayfp] DEFUN09: Call for Talks Tutorials (co-located w/ ICFP09) To: Bay Area Functional Programmers ba...@googlegroups.com Call for Talks and Tutorials ACM SIGPLAN 2009 Developer Tracks on Functional Programming http://www.defun2009.info/ Edinburgh, Scotland, September 3 and 5, 2009 The workshop will be held in conjunction with ICFP 2009 http://www.cs.nott.ac.uk/~gmh/icfp09.htmlhttp://www.cs.nott.ac.uk/%7Egmh/icfp09.html Important dates Proposal Deadline: June 5, 2009, 0:00 UTC Notification: June 19, 2009 DEFUN 2009 invites functional programmers and researchers who know how to solve problems with functional progamming to give talks and lead tutorials at the The ICFP Developer Tracks. We want to know about your favorite programming techniques, powerful libraries, and engineering approaches you've used that the world should know about and apply to other projects. We want to know how to be productive using functional programming, write better code, and avoid common pitfalls. We invite proposals for presentations in the following categories. Lightning talks 5- to 10-minute talks that introduce exciting and promising research or techniques that may be in progress or not yet ready for widespread use, but that offer a glimpse into the near future of real world functional programming. Examples: * Clustered high performance computing in a functional language * Making advanced type systems more accessible to working programmers * How and why we're infiltrating category theory info industry How-to talks 45-minute how-to talks that provide specific information on how to solve specific problems using functional programming. These talks focus on concrete examples, but provide useful information for developers working on different projects or in different contexts. Examples: * How I use Haskell for oilfield simulations. * How I replaced /sbin/init by a Scheme program. * How I hooked up my home appliances to an Erlang control system. * How I got an SML program to drive my BMW. General language tutorials Half-day general language tutorials for specific functional languages, given by recognized experts for the respective languages. Technology tutorials Half-day tutorials on techniques, technologies, or solving specific problems in functional programming. Examples: * How to make the best use of specific FP programming techniques * How to inject FP into a development team used to more conventional technologies * How to connect FP to existing libraries / frameworks / platforms * How to deliver high-performance systems with FP * How to deliver high-reliability systems with FP Remember that your audience will include computing professionals who are not academics and who may not already be experts on functional programming. Presenters of tutorials will receive free registration to CUFP 2009. Submission guidelines Submit a proposal of 150 words or less for either a 45-minute talk with a short QA session at the end, or a 300-word-or-less proposal for a 3-hour tutorial, where you present your material, but also give participants a chance to practice it on their own laptops. Some advice: * Give it a simple and straightforward title or name; avoid fancy titles or puns that would make it harder for attendees to figure out what you'll be talking about. * Clearly identify the level of the talk: What knowledge should people have when they come to the presentation or tutorial? * Explain why people will want to attend: o Is the language or library useful for a wide range of attendees? o Is the pitfall you're identifying common enough that a wide range of attendees is likely to encounter it? * Explain what benefits attendees are expected to take home to their own projects. * For a tutorial, explain how you want to structure the time, and what you expect to have attendees to do on their laptops. List what software you'll expect attendees to have installed prior to coming. Submit your proposal in plain text electronically to defun-2009-submissi...@serpentine.com by the beginning of Friday, June 5 2009, Universal Coordinated Time. Organizers * Yaron Minsky (Jane Street Capital) * Ulf Wiger (Erlang Training and Consulting) * Mike Sperber - co-chair (DeinProgramm) * Bryan O'Sullivan - co-chair (Linden Lab) -- 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
[Lift] Re: lift-core jar in repo-releases does not contain classes
Got it. It would be nice though if lift-archetype-basic that generates a basic scala project would pull down the latest 1.0 version of lift-core. It currently pulls down 0.8 version which does not have lift-mapper, lift- util and other dependent jars defined and this causes some jars. For example, when I ran the following command from the lift-book it pulls down 0.8 version: mvn archetype:generate -U -DgroupId=com.plexibus.examples.scala.lift - DartifactId=scala-example -Dversion=0.0.1-SNAPSHOT - DarchetypeGroupId=net.liftweb -DarchetypeArtifactId=lift-archetype- basic -DremoteRepositories=http://scala-tools.org/repo-releases lift-core-0.8 pom.xml: dependencies dependency groupId${project.groupId}/groupId artifactIdlift-webkit/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-textile/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-facebook/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-amqp/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-xmpp/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-widgets/artifactId version${project.version}/version /dependency /dependencies lift-core-1.0 pom.xml: dependencies dependency groupId${project.groupId}/groupId artifactIdlift-util/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-webkit/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-mapper/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-machine/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-record/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-textile/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-facebook/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-amqp/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-xmpp/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-widgets/artifactId version${project.version}/version /dependency /dependencies And I agree with Kris, perhaps it should be changed to pom instead of jar. If you are ok with it, I would love to make the above suggested changes and submit them for commit/approval to the committers. Thanks, Rosh http://blogs.plexibus.com http://www.twitter.com/ras_shadow On Apr 1, 9:09 am, David Pollak feeder.of.the.be...@gmail.com wrote: That's right. The lift-core.jar file has never contained any classes. It's a marker for Maven. lift-core depends on all the other Lift packages (e.g., lift-util, lift-webket, etc.) so these other packages are included in your project and they have classes in their jar files. On Wed, Apr 1, 2009 at 6:58 AM, Rosh jacknjill...@gmail.com wrote: I just started the learning scala and lift and was trying out the ToDo example. It seems that the lift-core artifact jar in the maven repo, http://scala-tools.org/repo-releases, is empty. I used the lift-basic- archetype which uses lift-core-0.8 jar. But the jar only contains the META-INF folder. No classes. Same with the 1.0 jar as well. The 0.6 jar contains Does not contain any classes: http://scala-tools.org/repo-releases/net/liftweb/lift-core/0.8/ lift-core-0.8.jar 2008-Nov-24 23:39:51 1.4K application/java-archive http://scala-tools.org/repo-releases/net/liftweb/lift-core/1.0/ lift-core-1.0.jar 2009-Feb-26 18:09:39 1.5K application/java-archive Contains classes: Underhttp://scala-tools.org/repo-releases/net/liftweb/lift-core/0.6: lift-core-0.6.jar 2008-Nov-24 23:40:15 3.6M application/java-archive Am I missing something? I know I haven't had my morning coffee yet. Thanks, Rosh http://blogs.plexibus.com http://www.twitter.com/ras_shadow -- 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
[Lift] Re: Fwd: Lift on OSGi
This is so awesome! :) Wax on! Wax off! On Wed, Apr 1, 2009 at 5:23 PM, David Pollak feeder.of.the.be...@gmail.comwrote: Folks, Here's an example of Lift on OSGi thanks to Heiko. Thanks, David -- Forwarded message -- From: Heiko Seeberger seeber...@weiglewilczek.com Date: Mon, Mar 30, 2009 at 8:02 AM Subject: Lift on OSGi To: David Pollak feeder.of.the.be...@gmail.com Hi David, Yes!! I succeeded in OSGi-fying a simple Lift project (lift-archetype-blank). Attached you will find the Maven project. There shouldn't be any local dependencies for building. For runtime you will need to install ScalaModules (which you can download from http://www.scalamodules.org) into you local Maven repository (take a look at the run batch file). In order to run the demo you will have to install PaxRunner (and tweak the path to pax-run in the run batch file). This is the easiest way to run OSGi without needing to know too much about it. Let me know, how I can help you in getting the demo up an running on your machine. Heiko __ Technical Director Weigle Wilczek GmbH Martinstraße 42-44 73728 Esslingen Germany T (+49) 711 46050250 F (+49) 711 45999829 Managing Directors: Dr. Jörn Weigle, Dr. Stephan Wilczek Domicile: Esslingen a. N. Register Court: Stuttgart HRB 214442 Commercial Register No. DE 213 472 880 www.weiglewilczek.comwww.eclipse-training.net -- 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 -- Viktor Klang Senior Systems Analyst --~--~-~--~~~---~--~~ 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-core jar in repo-releases does not contain classes
On Wed, Apr 1, 2009 at 8:33 AM, Rosh jacknjill...@gmail.com wrote: Got it. It would be nice though if lift-archetype-basic that generates a basic scala project would pull down the latest 1.0 version of lift-core. If you create a project with Lift 0.8 specified in the Maven command, you're going to get a 0.8 project. If you create a 1.0 project, you'll get a 1.0 project. Please let us know what command line you used to create your project. It currently pulls down 0.8 version which does not have lift-mapper, lift- util and other dependent jars defined and this causes some jars. In Lift 0.8, util and mapper were part of lift-webkit For example, when I ran the following command from the lift-book it pulls down 0.8 version: mvn archetype:generate -U -DgroupId=com.plexibus.examples.scala.lift - DartifactId=scala-example -Dversion=0.0.1-SNAPSHOT - DarchetypeGroupId=net.liftweb -DarchetypeArtifactId=lift-archetype- basic -DremoteRepositories=http://scala-tools.org/repo-releases lift-core-0.8 pom.xml: dependencies dependency groupId${project.groupId}/groupId artifactIdlift-webkit/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-textile/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-facebook/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-amqp/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-xmpp/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-widgets/artifactId version${project.version}/version /dependency /dependencies lift-core-1.0 pom.xml: dependencies dependency groupId${project.groupId}/groupId artifactIdlift-util/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-webkit/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-mapper/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-machine/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-record/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-textile/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-facebook/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-amqp/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-xmpp/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-widgets/artifactId version${project.version}/version /dependency /dependencies And I agree with Kris, perhaps it should be changed to pom instead of jar. If you are ok with it, I would love to make the above suggested changes and submit them for commit/approval to the committers. Thanks, Rosh http://blogs.plexibus.com http://www.twitter.com/ras_shadow On Apr 1, 9:09 am, David Pollak feeder.of.the.be...@gmail.com wrote: That's right. The lift-core.jar file has never contained any classes. It's a marker for Maven. lift-core depends on all the other Lift packages (e.g., lift-util, lift-webket, etc.) so these other packages are included in your project and they have classes in their jar files. On Wed, Apr 1, 2009 at 6:58 AM, Rosh jacknjill...@gmail.com wrote: I just started the learning scala and lift and was trying out the ToDo example. It seems that the lift-core artifact jar in the maven repo, http://scala-tools.org/repo-releases, is empty. I used the lift-basic- archetype which uses lift-core-0.8 jar. But the jar only contains the META-INF folder. No classes. Same with the 1.0 jar as well. The 0.6 jar contains Does not contain any classes: http://scala-tools.org/repo-releases/net/liftweb/lift-core/0.8/ lift-core-0.8.jar 2008-Nov-24 23:39:511.4K application/java-archive http://scala-tools.org/repo-releases/net/liftweb/lift-core/1.0/ lift-core-1.0.jar 2009-Feb-26 18:09:391.5K application/java-archive Contains classes: Underhttp://scala-tools.org/repo-releases/net/liftweb/lift-core/0.6: lift-core-0.6.jar 2008-Nov-24 23:40:153.6M application/java-archive Am I missing something? I know I haven't had my
[Lift] Re: A gap in my knowledge, JsCommands
I pushed code to SHtml.scala to fix ajaxCall and ajaxInvoke. It's here: http://github.com/dpp/liftweb/tree/tjweir-shtml-js-fix On Apr 1, 10:59 am, TylerWeir tyler.w...@gmail.com wrote: Rewriting ajaxCall_* to incorporate Vik's idea fixes this: private def ajaxCall_*(jsCalcValue: JsExp, func: AFuncHolder): (String, JsExp) = { val (n, r) = fmapFunc(func)(name = (name, makeAjaxCall(JsRaw('+name+=' + +jsCalcValue.toJsCmd (' + n + ', r) } Thanks. On Apr 1, 9:37 am, TylerWeir tyler.w...@gmail.com wrote: Excellent, thanks Derek, Vik, I'm back on this today. On Apr 1, 9:03 am, Viktor Klang viktor.kl...@gmail.com wrote: On Wed, Apr 1, 2009 at 2:55 PM, Derek Chen-Becker dchenbec...@gmail.comwrote: It looks like it's missing a function call. Compare onclick=lift_ajaxHandler(... to onclick=(F687305521435R3K,lift_ajaxHandler I'm no JS guru, so that second one might be perfectly valid JS, but it looks weird to me. I'd recommend to stay away from referring to objects by reference instead of by id.. (all kinds of weird stuff can happen when you start to remove objects/have partial rendering) I.e. somefun('F687305521435R3K',lift_ajaxHandler) instead of somefun(F687305521435R3K,lift_ajaxHandler) (Note the single-quotes.) Derek On Tue, Mar 31, 2009 at 9:57 AM, TylerWeir tyler.w...@gmail.com wrote: I'm wading into an area that I'm a bit unfamiliar with and not sure if I'm running in a bug. Snippet code: class HelloWorld { def ajaxFunc1() : JsCmd = JsRaw(alert('Button1 clicked')) def ajaxFunc2(str: String) : JsCmd = { Log.info(Received + str) JsRaw(alert('Button2 clicked')) } def renderAjaxButtons(xhtml: NodeSeq): NodeSeq = { bind(ex, xhtml, button1 - SHtml.ajaxButton(Press Me, ajaxFunc1 _), button2 - buttonPress Me 2/button % (onclick - SHtml.ajaxCall(Str(Button-2), ajaxFunc2 _))) } } Which is in this template: lift:HelloWorld.renderAjaxButtons ex:button1 /br / ex:button2 /br / /lift:HelloWorld.renderAjaxButtons And is rendered thusly: button onclick=lift_ajaxHandler('F687305521434PIG=true', null, null); return false;Press Me/buttonbr / button onclick=(F687305521435R3K,lift_ajaxHandler ('F687305521435R3K=' + 'Button-2', null, null))Press Me 2/ buttonbr / Button 1 is find, but Button 2 causes FireBug to whine: F687305521435R3K is not defined onclick(click clientX=500, clientY=239)2 (line 2) [Break on this error] F687305521435R3K, lift_ajaxHandl...F687305521435R3K=Button-2, null, null); Does the second onclick look incorrect to you? -- Viktor Klang Senior Systems Analyst --~--~-~--~~~---~--~~ 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: Menu widget
Is there a reason why you downloaded he scripts separately? ... the superfish dependencies are offered by the widget. Please see the lift- widgets project and the test applicaiton from there. Br's, Marius On Mar 31, 11:48 pm, DavidV david.v.villa...@gmail.com wrote: I would like to use this new MenuWidget, so I got the source code from GitHub and put it into my application as a snippet. I also downloaded all of the necessary superfish .css and .js files from the superfish website and put those in local sub-directories of the src/main/ webapp folder. When I try to compile the code in maven, however, I get the following error. C:\Source\trunk\eclipse\testLiftmvn clean jetty:run [INFO] Scanning for projects... [INFO] Searching repository for plugin with prefix: 'jetty'. [INFO] [INFO] Building testLift [INFO] task-segment: [clean, jetty:run] [INFO] [INFO] [clean:clean] [INFO] Deleting directory C:\Source\trunk\eclipse\testLift\target [INFO] Preparing jetty:run [INFO] [resources:resources] [INFO] Using default encoding to copy filtered resources. [INFO] [yuicompressor:compress {execution: default}] [INFO] jquery.hoverIntent.js (4637b) - jquery.hoverIntent.js (0b)[0%] [INFO] superfish.js (3837b) - superfish.js (0b)[0%] [INFO] entryform.css (11417b) - entryform.css (10202b)[89%] [INFO] print.css (1341b) - print.css (821b)[61%] [INFO] [ERROR] FATAL ERROR [INFO] [INFO] Illegal group reference [INFO] [INFO] Trace java.lang.IllegalArgumentException: Illegal group reference at java.util.regex.Matcher.appendReplacement(Matcher.java:713) at com.yahoo.platform.yui.compressor.CssCompressor.compress (CssCompresso r.java:78) at net.sf.alchim.mojo.yuicompressor.YuiCompressorMojo.processFile(YuiCom pressorMojo.java:182) at net.sf.alchim.mojo.yuicompressor.MojoSupport.processDir (MojoSupport.j ava:151) at net.sf.alchim.mojo.yuicompressor.MojoSupport.execute (MojoSupport.java :105) at org.apache.maven.plugin.DefaultPluginManager.executeMojo (DefaultPlugi nManager.java:451) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa ultLifecycleExecutor.java:558) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLi fecycle(DefaultLifecycleExecutor.java:499) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.forkProjectLifecy cle(DefaultLifecycleExecutor.java:924) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.forkLifecycle(Def aultLifecycleExecutor.java:767) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa ultLifecycleExecutor.java:529) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandalone Goal(DefaultLifecycleExecutor.java:512) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(Defau ltLifecycleExecutor.java:482) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHan dleFailures(DefaultLifecycleExecutor.java:330) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmen ts(DefaultLifecycleExecutor.java:291) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute (DefaultLi fecycleExecutor.java:142) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java: 336) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java: 129) at org.apache.maven.cli.MavenCli.main(MavenCli.java:287) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced (Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode (Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) [INFO] [INFO] Total time: 5 seconds [INFO] Finished at: Tue Mar 31 17:38:35 EDT 2009 [INFO] Final Memory: 17M/30M [INFO] Any ideas on how to prevent/fix this? Do I need to modify my .pom? Thanks, David On Mar 23, 12:18 pm, marius d. marius.dan...@gmail.com wrote: Cool ... if you tested it and theMenuWidget, from my
[Lift] Re: The Lift 1.1 list
I gotta be honest, with April Fools, I was scared to click on goatrodeo.org... On Apr 1, 12:11 pm, David Pollak feeder.of.the.be...@gmail.com wrote: Folks, I think we've got our Lift 1.1 list. If anyone has anything to add, please speak up now. - Improved documentation: better VScalaDoc coverage as well as better tutorial and cook-book documentation. - Improved J2EE support including JTA and Portlets. - Finish Record/Field code with backing store including JDBC, JPA and Goat Rodeo (what's Goat Rodeo?http://goatrodeo.org) - Improved client-side JavaScript support and better JavaScript abstractions. - Client/Server data synchronization (integrated with Record/Field) - Improved support for REST. - Improved performance including caching templates when running in production mode. - OSGi support. - Improved testing framework and better testing support when running in test mode. - Implement Servlet 3.0 support. - HTML 5 and Web Sockets support and integration with Kaazing's Web Sockets server. Also, sensing which browser is making the request and performing optimizations based on that browser's characteristics (specifically, Chrome and Firefox 3.1 support) We will have bug-fix releases of 1.0 along the way and we'll have a release off the 1.0 branch when Scala 2.8 is released. Feedback is welcome in the next 3 days. 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: The Lift 1.1 list
On Wed, Apr 1, 2009 at 9:37 AM, TylerWeir tyler.w...@gmail.com wrote: I gotta be honest, with April Fools, I was scared to click on goatrodeo.org... :-) On Apr 1, 12:11 pm, David Pollak feeder.of.the.be...@gmail.com wrote: Folks, I think we've got our Lift 1.1 list. If anyone has anything to add, please speak up now. - Improved documentation: better VScalaDoc coverage as well as better tutorial and cook-book documentation. - Improved J2EE support including JTA and Portlets. - Finish Record/Field code with backing store including JDBC, JPA and Goat Rodeo (what's Goat Rodeo?http://goatrodeo.org) - Improved client-side JavaScript support and better JavaScript abstractions. - Client/Server data synchronization (integrated with Record/Field) - Improved support for REST. - Improved performance including caching templates when running in production mode. - OSGi support. - Improved testing framework and better testing support when running in test mode. - Implement Servlet 3.0 support. - HTML 5 and Web Sockets support and integration with Kaazing's Web Sockets server. Also, sensing which browser is making the request and performing optimizations based on that browser's characteristics (specifically, Chrome and Firefox 3.1 support) We will have bug-fix releases of 1.0 along the way and we'll have a release off the 1.0 branch when Scala 2.8 is released. Feedback is welcome in the next 3 days. 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: Fwd: Lift on OSGi
Hi, This is only the first mini step, more are necessary to get real OSGi support. But be sure that I will go ahead ;-) Heiko On 01.04.2009, at 17:23, David Pollak wrote: Folks, Here's an example of Lift on OSGi thanks to Heiko. Thanks, David -- Forwarded message -- From: Heiko Seeberger seeber...@weiglewilczek.com Date: Mon, Mar 30, 2009 at 8:02 AM Subject: Lift on OSGi To: David Pollak feeder.of.the.be...@gmail.com Hi David, Yes!! I succeeded in OSGi-fying a simple Lift project (lift- archetype-blank). Attached you will find the Maven project. There shouldn't be any local dependencies for building. For runtime you will need to install ScalaModules (which you can download from http://www.scalamodules.org ) into you local Maven repository (take a look at the run batch file). In order to run the demo you will have to install PaxRunner (and tweak the path to pax-run in the run batch file). This is the easiest way to run OSGi without needing to know too much about it. Let me know, how I can help you in getting the demo up an running on your machine. Heiko __ Technical Director Weigle Wilczek GmbH Martinstraße 42-44 73728 Esslingen Germany T (+49) 711 46050250 F (+49) 711 45999829 Managing Directors: Dr. Jörn Weigle, Dr. Stephan Wilczek Domicile: Esslingen a. N. Register Court: Stuttgart HRB 214442 Commercial Register No. DE 213 472 880 www.weiglewilczek.comwww.eclipse-training.net -- 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 helloworld-osgi.pnghelloworld.zip --~--~-~--~~~---~--~~ 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: The Lift 1.1 list
Sounds great. One other feature I'd like (and I think would be widely useful): * Partitioned service cluster support for a/b testing: redirect some users to a different server, e.g. to test the new version And possibly: * Backing store support for Voldemort (or does that come through goat rodeo?) How'd you get the name goat rodeo?! lol Lee On Wed, Apr 1, 2009 at 9:11 AM, David Pollak feeder.of.the.be...@gmail.comwrote: Folks, I think we've got our Lift 1.1 list. If anyone has anything to add, please speak up now. - Improved documentation: better VScalaDoc coverage as well as better tutorial and cook-book documentation. - Improved J2EE support including JTA and Portlets. - Finish Record/Field code with backing store including JDBC, JPA and Goat Rodeo (what's Goat Rodeo? http://goatrodeo.org) - Improved client-side JavaScript support and better JavaScript abstractions. - Client/Server data synchronization (integrated with Record/Field) - Improved support for REST. - Improved performance including caching templates when running in production mode. - OSGi support. - Improved testing framework and better testing support when running in test mode. - Implement Servlet 3.0 support. - HTML 5 and Web Sockets support and integration with Kaazing's Web Sockets server. Also, sensing which browser is making the request and performing optimizations based on that browser's characteristics (specifically, Chrome and Firefox 3.1 support) We will have bug-fix releases of 1.0 along the way and we'll have a release off the 1.0 branch when Scala 2.8 is released. Feedback is welcome in the next 3 days. 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: A gap in my knowledge, JsCommands
On Apr 1, 5:59 pm, TylerWeir tyler.w...@gmail.com wrote: Rewriting ajaxCall_* to incorporate Vik's idea fixes this: private def ajaxCall_*(jsCalcValue: JsExp, func: AFuncHolder): (String, JsExp) = { val (n, r) = fmapFunc(func)(name = (name, makeAjaxCall(JsRaw('+name+=' + +jsCalcValue.toJsCmd (' + n + ', r) Tyler instead of ' + n + ' we usually use encJs so the return tuple would become (n.encJs, r). If you are ok with this can you please update it in github ? } Thanks. On Apr 1, 9:37 am, TylerWeir tyler.w...@gmail.com wrote: Excellent, thanks Derek, Vik, I'm back on this today. On Apr 1, 9:03 am, Viktor Klang viktor.kl...@gmail.com wrote: On Wed, Apr 1, 2009 at 2:55 PM, Derek Chen-Becker dchenbec...@gmail.comwrote: It looks like it's missing a function call. Compare onclick=lift_ajaxHandler(... to onclick=(F687305521435R3K,lift_ajaxHandler I'm no JS guru, so that second one might be perfectly valid JS, but it looks weird to me. I'd recommend to stay away from referring to objects by reference instead of by id.. (all kinds of weird stuff can happen when you start to remove objects/have partial rendering) I.e. somefun('F687305521435R3K',lift_ajaxHandler) instead of somefun(F687305521435R3K,lift_ajaxHandler) (Note the single-quotes.) Derek On Tue, Mar 31, 2009 at 9:57 AM, TylerWeir tyler.w...@gmail.com wrote: I'm wading into an area that I'm a bit unfamiliar with and not sure if I'm running in a bug. Snippet code: class HelloWorld { def ajaxFunc1() : JsCmd = JsRaw(alert('Button1 clicked')) def ajaxFunc2(str: String) : JsCmd = { Log.info(Received + str) JsRaw(alert('Button2 clicked')) } def renderAjaxButtons(xhtml: NodeSeq): NodeSeq = { bind(ex, xhtml, button1 - SHtml.ajaxButton(Press Me, ajaxFunc1 _), button2 - buttonPress Me 2/button % (onclick - SHtml.ajaxCall(Str(Button-2), ajaxFunc2 _))) } } Which is in this template: lift:HelloWorld.renderAjaxButtons ex:button1 /br / ex:button2 /br / /lift:HelloWorld.renderAjaxButtons And is rendered thusly: button onclick=lift_ajaxHandler('F687305521434PIG=true', null, null); return false;Press Me/buttonbr / button onclick=(F687305521435R3K,lift_ajaxHandler ('F687305521435R3K=' + 'Button-2', null, null))Press Me 2/ buttonbr / Button 1 is find, but Button 2 causes FireBug to whine: F687305521435R3K is not defined onclick(click clientX=500, clientY=239)2 (line 2) [Break on this error] F687305521435R3K, lift_ajaxHandl...F687305521435R3K=Button-2, null, null); Does the second onclick look incorrect to you? -- Viktor Klang Senior Systems Analyst --~--~-~--~~~---~--~~ 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: The Lift 1.1 list
On Wed, Apr 1, 2009 at 7:16 PM, Lee Mighdoll leemighd...@gmail.com wrote: Sounds great. One other feature I'd like (and I think would be widely useful): * Partitioned service cluster support for a/b testing: redirect some users to a different server, e.g. to test the new version Just do a redirect response? And possibly: * Backing store support for Voldemort (or does that come through goat rodeo?) How'd you get the name goat rodeo?! lol Lee On Wed, Apr 1, 2009 at 9:11 AM, David Pollak feeder.of.the.be...@gmail.com wrote: Folks, I think we've got our Lift 1.1 list. If anyone has anything to add, please speak up now. - Improved documentation: better VScalaDoc coverage as well as better tutorial and cook-book documentation. - Improved J2EE support including JTA and Portlets. - Finish Record/Field code with backing store including JDBC, JPA and Goat Rodeo (what's Goat Rodeo? http://goatrodeo.org) - Improved client-side JavaScript support and better JavaScript abstractions. - Client/Server data synchronization (integrated with Record/Field) - Improved support for REST. - Improved performance including caching templates when running in production mode. - OSGi support. - Improved testing framework and better testing support when running in test mode. - Implement Servlet 3.0 support. - HTML 5 and Web Sockets support and integration with Kaazing's Web Sockets server. Also, sensing which browser is making the request and performing optimizations based on that browser's characteristics (specifically, Chrome and Firefox 3.1 support) We will have bug-fix releases of 1.0 along the way and we'll have a release off the 1.0 branch when Scala 2.8 is released. Feedback is welcome in the next 3 days. 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 -- Viktor Klang Senior Systems Analyst --~--~-~--~~~---~--~~ 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: A gap in my knowledge, JsCommands
Tyler, This call is malformed: button2 - buttonPress Me 2/button % (onclick - SHtml.ajaxCall(Str(Button-2), ajaxFunc2 _))) SHtml.ajaxCall returns a (String, JsCmd). The String is absolutely necessary (it will be actually) for GC). The call is doing the right thing and should not be patched. At some point when jQuery 1.4 comes out and fixes the namespace issue, the first parameter will need to go into a lift:gc attribute and the second will be the actual JavaScript command. So, please do not push your changes live. Thanks, David On Tue, Mar 31, 2009 at 8:57 AM, TylerWeir tyler.w...@gmail.com wrote: I'm wading into an area that I'm a bit unfamiliar with and not sure if I'm running in a bug. Snippet code: class HelloWorld { def ajaxFunc1() : JsCmd = JsRaw(alert('Button1 clicked')) def ajaxFunc2(str: String) : JsCmd = { Log.info(Received + str) JsRaw(alert('Button2 clicked')) } def renderAjaxButtons(xhtml: NodeSeq): NodeSeq = { bind(ex, xhtml, button1 - SHtml.ajaxButton(Press Me, ajaxFunc1 _), button2 - buttonPress Me 2/button % (onclick - SHtml.ajaxCall(Str(Button-2), ajaxFunc2 _))) } } Which is in this template: lift:HelloWorld.renderAjaxButtons ex:button1 /br / ex:button2 /br / /lift:HelloWorld.renderAjaxButtons And is rendered thusly: button onclick=lift_ajaxHandler('F687305521434PIG=true', null, null); return false;Press Me/buttonbr / button onclick=(F687305521435R3K,lift_ajaxHandler ('F687305521435R3K=' + 'Button-2', null, null))Press Me 2/ buttonbr / Button 1 is find, but Button 2 causes FireBug to whine: F687305521435R3K is not defined onclick(click clientX=500, clientY=239)2 (line 2) [Break on this error] F687305521435R3K, lift_ajaxHandl...F687305521435R3K=Button-2, null, null); Does the second onclick look incorrect to you? -- 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: The Lift 1.1 list
Hahaha. David, would improved client-side JavaScript support and better JavaScript abstractions cover my autocomplete customization question? Also, could I make a request to add JS and CSS minification in production mode that can be controlled by a request parameter variable. So, ?minificationOff=true would mean that it serves the normal JS and CSS. I am not sure if this should be offered by the framework or just controlled by the user in his build process. Thanks, Bradford On Apr 1, 12:53 pm, David Pollak feeder.of.the.be...@gmail.com wrote: On Wed, Apr 1, 2009 at 9:37 AM, TylerWeir tyler.w...@gmail.com wrote: I gotta be honest, with April Fools, I was scared to click on goatrodeo.org... :-) On Apr 1, 12:11 pm, David Pollak feeder.of.the.be...@gmail.com wrote: Folks, I think we've got our Lift 1.1 list. If anyone has anything to add, please speak up now. - Improved documentation: better VScalaDoc coverage as well as better tutorial and cook-book documentation. - Improved J2EE support including JTA and Portlets. - Finish Record/Field code with backing store including JDBC, JPA and Goat Rodeo (what's Goat Rodeo?http://goatrodeo.org) - Improved client-side JavaScript support and better JavaScript abstractions. - Client/Server data synchronization (integrated with Record/Field) - Improved support for REST. - Improved performance including caching templates when running in production mode. - OSGi support. - Improved testing framework and better testing support when running in test mode. - Implement Servlet 3.0 support. - HTML 5 and Web Sockets support and integration with Kaazing's Web Sockets server. Also, sensing which browser is making the request and performing optimizations based on that browser's characteristics (specifically, Chrome and Firefox 3.1 support) We will have bug-fix releases of 1.0 along the way and we'll have a release off the 1.0 branch when Scala 2.8 is released. Feedback is welcome in the next 3 days. 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 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: The Lift 1.1 list
I propose we migrate to Joda Time for 1.1. In particular, I propose that Record ditch Java Date/Time entirely in favor of Joda Time. Since migrating from Mapper to Record will involve a port anyway, what's one more breaking change among friends? Lift's other uses of Date/Time should be deprecated in favor of Joda Time alternatives. Mapper should continue to support Date/Time. --j On Wed, Apr 1, 2009 at 9:11 AM, David Pollak feeder.of.the.be...@gmail.comwrote: Folks, I think we've got our Lift 1.1 list. If anyone has anything to add, please speak up now. - Improved documentation: better VScalaDoc coverage as well as better tutorial and cook-book documentation. - Improved J2EE support including JTA and Portlets. - Finish Record/Field code with backing store including JDBC, JPA and Goat Rodeo (what's Goat Rodeo? http://goatrodeo.org) - Improved client-side JavaScript support and better JavaScript abstractions. - Client/Server data synchronization (integrated with Record/Field) - Improved support for REST. - Improved performance including caching templates when running in production mode. - OSGi support. - Improved testing framework and better testing support when running in test mode. - Implement Servlet 3.0 support. - HTML 5 and Web Sockets support and integration with Kaazing's Web Sockets server. Also, sensing which browser is making the request and performing optimizations based on that browser's characteristics (specifically, Chrome and Firefox 3.1 support) We will have bug-fix releases of 1.0 along the way and we'll have a release off the 1.0 branch when Scala 2.8 is released. Feedback is welcome in the next 3 days. 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: The Lift 1.1 list
I also propose we start thinking seriously about 2.8. In particular, 2.8 will probably add support for named and default arguments. This places extra burdens on library and framework designers, as method -argument- names will be just as much a part of a library/framework's API as class, method, and field names. It also means that decisions about the order of arguments, whether arguments have a default, and whether methods are overloaded need to be made or revisited. For our 1.0 branch, this means cleaning up argument names before releasing a 2.8 version. Order of arguments should not be changed, nor should we remove any overloaded method versions. For our 1.1 branch, I propose we do a holistic review of API decisions with regards to arguments, argument names, argument order, defaults, and overloading. --j On Wed, Apr 1, 2009 at 9:11 AM, David Pollak feeder.of.the.be...@gmail.comwrote: Folks, I think we've got our Lift 1.1 list. If anyone has anything to add, please speak up now. - Improved documentation: better VScalaDoc coverage as well as better tutorial and cook-book documentation. - Improved J2EE support including JTA and Portlets. - Finish Record/Field code with backing store including JDBC, JPA and Goat Rodeo (what's Goat Rodeo? http://goatrodeo.org) - Improved client-side JavaScript support and better JavaScript abstractions. - Client/Server data synchronization (integrated with Record/Field) - Improved support for REST. - Improved performance including caching templates when running in production mode. - OSGi support. - Improved testing framework and better testing support when running in test mode. - Implement Servlet 3.0 support. - HTML 5 and Web Sockets support and integration with Kaazing's Web Sockets server. Also, sensing which browser is making the request and performing optimizations based on that browser's characteristics (specifically, Chrome and Firefox 3.1 support) We will have bug-fix releases of 1.0 along the way and we'll have a release off the 1.0 branch when Scala 2.8 is released. Feedback is welcome in the next 3 days. 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: lift-core jar in repo-releases does not contain classes
I did not specify the archtypeVersion (with value=1.0). I left it out. And therefore by default it picked 0.8 version. Command line used: mvn archetype:generate -U -DgroupId=com.plexibus.examples.scala.lift - DartifactId=scala-example -Dversion=0.0.1-SNAPSHOT - DarchetypeGroupId=net.liftweb -DarchetypeArtifactId=lift-archetype- basic -DremoteRepositories=http://scala-tools.org/repo-releases If I do specify a -DarchtypeVersion=1.0, then it does pull down the lift-core 1.0 jar. Thanks for the clarification. On Apr 1, 10:47 am, David Pollak feeder.of.the.be...@gmail.com wrote: On Wed, Apr 1, 2009 at 8:33 AM, Rosh jacknjill...@gmail.com wrote: Got it. It would be nice though if lift-archetype-basic that generates a basic scala project would pull down the latest 1.0 version of lift-core. If you create a project with Lift 0.8 specified in the Maven command, you're going to get a 0.8 project. If you create a 1.0 project, you'll get a 1.0 project. Please let us know what command line you used to create your project. It currently pulls down 0.8 version which does not have lift-mapper, lift- util and other dependent jars defined and this causes some jars. In Lift 0.8, util and mapper were part of lift-webkit For example, when I ran the following command from the lift-book it pulls down 0.8 version: mvn archetype:generate -U -DgroupId=com.plexibus.examples.scala.lift - DartifactId=scala-example -Dversion=0.0.1-SNAPSHOT - DarchetypeGroupId=net.liftweb -DarchetypeArtifactId=lift-archetype- basic -DremoteRepositories=http://scala-tools.org/repo-releases lift-core-0.8 pom.xml: dependencies dependency groupId${project.groupId}/groupId artifactIdlift-webkit/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-textile/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-facebook/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-amqp/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-xmpp/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-widgets/artifactId version${project.version}/version /dependency /dependencies lift-core-1.0 pom.xml: dependencies dependency groupId${project.groupId}/groupId artifactIdlift-util/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-webkit/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-mapper/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-machine/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-record/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-textile/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-facebook/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-amqp/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-xmpp/artifactId version${project.version}/version /dependency dependency groupId${project.groupId}/groupId artifactIdlift-widgets/artifactId version${project.version}/version /dependency /dependencies And I agree with Kris, perhaps it should be changed to pom instead of jar. If you are ok with it, I would love to make the above suggested changes and submit them for commit/approval to the committers. Thanks, Rosh http://blogs.plexibus.com http://www.twitter.com/ras_shadow On Apr 1, 9:09 am, David Pollak feeder.of.the.be...@gmail.com wrote: That's right. The lift-core.jar file has never contained any classes. It's a marker for Maven. lift-core depends on all the other Lift packages (e.g., lift-util, lift-webket, etc.) so these other packages are included in your project and they have classes in their jar files. On Wed, Apr 1, 2009 at 6:58 AM, Rosh jacknjill...@gmail.com wrote: I just started the learning scala and lift and was trying out the ToDo example. It seems that the lift-core artifact jar in the maven repo, http://scala-tools.org/repo-releases, is empty. I used the lift-basic- archetype which uses
[Lift] Widgets
I haven't had a chance to play around with the Lift widgets yet. Is there any documentation anywhere about them? Chas. --~--~-~--~~~---~--~~ 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] Lift AJAX and IE6
I just got around to testing a couple of my Lift sites on IE6 and the results are depressing. One problem is that there is a recurrent JavaScript error. I presume this is coming from the Lift AJAX script since it pops up like clockwork. Does anyone know anything about this? Also, is the Lift AJAX script necessary for anything other than Comet? If I have a site that's using no AJAX or Comet, can I just turn this off? If so, how? Thanks! Chas. --~--~-~--~~~---~--~~ 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 AJAX and IE6
On Wed, Apr 1, 2009 at 1:25 PM, Charles F. Munat c...@munat.com wrote: I just got around to testing a couple of my Lift sites on IE6 and the results are depressing. One problem is that there is a recurrent JavaScript error. I presume this is coming from the Lift AJAX script since it pops up like clockwork. Does anyone know anything about this? Also, is the Lift AJAX script necessary for anything other than Comet? If I have a site that's using no AJAX or Comet, can I just turn this off? If so, how? No... it's also used for Garbage Collection. :-( What's the JS error? What is your server stack (e.g., Apache/Tomcat, NGinx/Jetty, etc.) Thanks! Chas. -- 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: The Lift 1.1 list
I think your right Jorge... 2.8 brings some important changes that could quite possibly have some pretty significant breaking changes in the Lift API. I also agree with the JodaTime in record/field, sounds like perfect sense. Cheers, Tim --~--~-~--~~~---~--~~ 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] Need for lightweight JPA archetype
Guys, Do people see room for a blank JPA archetype just like we have blank and basic of normal lift archetypes? IMO, whilst its great having the basic one for learning and examples, having something thats a workable starting point without having to remove code etc would be helpful. I appreciate this is a bit lazy - but i don't think it would take much work and would provide a neat solution Thoughts? Tim --~--~-~--~~~---~--~~ 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: Need for lightweight JPA archetype
Timmy, yeah, I can see that coming in handy. Cheers, Viktor On Wed, Apr 1, 2009 at 11:13 PM, Tim Perrett timo...@getintheloop.euwrote: Guys, Do people see room for a blank JPA archetype just like we have blank and basic of normal lift archetypes? IMO, whilst its great having the basic one for learning and examples, having something thats a workable starting point without having to remove code etc would be helpful. I appreciate this is a bit lazy - but i don't think it would take much work and would provide a neat solution Thoughts? Tim -- Viktor Klang Senior Systems Analyst --~--~-~--~~~---~--~~ 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: Need for lightweight JPA archetype
Glad im not the only one ;-) On Apr 1, 11:15 pm, Viktor Klang viktor.kl...@gmail.com wrote: Timmy, yeah, I can see that coming in handy. Cheers, Viktor On Wed, Apr 1, 2009 at 11:13 PM, Tim Perrett timo...@getintheloop.euwrote: Guys, Do people see room for a blank JPA archetype just like we have blank and basic of normal lift archetypes? IMO, whilst its great having the basic one for learning and examples, having something thats a workable starting point without having to remove code etc would be helpful. I appreciate this is a bit lazy - but i don't think it would take much work and would provide a neat solution Thoughts? Tim -- Viktor Klang Senior Systems Analyst --~--~-~--~~~---~--~~ 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 AJAX and IE6
Hmm. Yeah, I thought it was used for GC. That's why I asked. When I get back to the Windows machine, I'll check. But IE6 doesn't make it easy. It gives me a line number and a character number, and then asks if I want to keep running scripts on the page. I'm not sure how to get into debug mode (or even if it's possible). I'm using Apache 2.0 to proxy to a single instance of Jetty 6 running the Lift app. (Multiple Lift apps in multiple Jetty instances.) More shortly... Chas. David Pollak wrote: On Wed, Apr 1, 2009 at 1:25 PM, Charles F. Munat c...@munat.com mailto:c...@munat.com wrote: I just got around to testing a couple of my Lift sites on IE6 and the results are depressing. One problem is that there is a recurrent JavaScript error. I presume this is coming from the Lift AJAX script since it pops up like clockwork. Does anyone know anything about this? Also, is the Lift AJAX script necessary for anything other than Comet? If I have a site that's using no AJAX or Comet, can I just turn this off? If so, how? No... it's also used for Garbage Collection. :-( What's the JS error? What is your server stack (e.g., Apache/Tomcat, NGinx/Jetty, etc.) Thanks! Chas. -- 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: The Lift 1.1 list
+1 Anything to get away from that damn Java Date/Calendar crap. Agreed on need to review API. Chas. Timothy Perrett wrote: I think your right Jorge... 2.8 brings some important changes that could quite possibly have some pretty significant breaking changes in the Lift API. I also agree with the JodaTime in record/field, sounds like perfect sense. Cheers, Tim --~--~-~--~~~---~--~~ 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: autocomplete - options
I don't mean to be pushy on this one, but is anyone looking at this for me? Or is it recommended that I either create my own or write a patch for this? I would obviously prefer this autocomplete flexibility to be an existing part of lift, but I don't mind trying to patch this if I knew it had a chance of being accepted ahead of time. Thanks, Bradford On Mar 31, 8:24 pm, bradford fingerm...@gmail.com wrote: The autocomplete widget is very cool, but I can't figure out how to use it to change some of the JQuery autocomplete options such as the delay and minChars. Also, how could I modify the JQuery autocomplete result handler? Thanks, Bradford --~--~-~--~~~---~--~~ 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] You might be the person that designs the Scala Lift Off logo
Folks, I'm running a contest at 99 Designs for the Scala Lift Off logo... see http://99designs.com/contests/19890 Submissions from the community would be great. 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] object sync ideas
I've been thinking about object synchronization recently and I think it's jelled enough now to gather some feedback on a concrete proposal. The basic idea is that you should be able to modify a javascript object on the browser, and then see the change automatically reflected to a scala server object. Similarly changes made to scala objects should propagate to the browser, continuously and asynchronously via comet. Ideally, the framework should most of the lifting, so that programs on both client and server feel like they're modifying plain old local objects. I'm hoping to help add some version of this to lift! Some documentation and a cut at the javascript side of the implementation are here http://github.com/mighdoll/jsync/tree/master. Suggestions of any kind would be welcome, Lee --~--~-~--~~~---~--~~ 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: autocomplete - options
Bradford, We rarely accept patches. It's an intellectual property thing. We like to know where every bit of code came from. You're welcome to write your own autocomplete code and make it available on GitHub for others to use. Updating the autocomplete stuff is not a priority for me. Perhaps it is for another Lift committer. Sorry. David On Wed, Apr 1, 2009 at 3:53 PM, bradford fingerm...@gmail.com wrote: I don't mean to be pushy on this one, but is anyone looking at this for me? Or is it recommended that I either create my own or write a patch for this? I would obviously prefer this autocomplete flexibility to be an existing part of lift, but I don't mind trying to patch this if I knew it had a chance of being accepted ahead of time. Thanks, Bradford On Mar 31, 8:24 pm, bradford fingerm...@gmail.com wrote: The autocomplete widget is very cool, but I can't figure out how to use it to change some of the JQuery autocomplete options such as the delay and minChars. Also, how could I modify the JQuery autocomplete result handler? Thanks, Bradford -- 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: Lift AJAX and IE6
I've only ever entered debug mode with Visual Studio installed. Unfortunately I'm only supporting IE7 on my work machine so I can't offer any other help :( - Josh On Wed, Apr 1, 2009 at 5:50 PM, Charles F. Munat c...@munat.com wrote: Hmm. Yeah, I thought it was used for GC. That's why I asked. When I get back to the Windows machine, I'll check. But IE6 doesn't make it easy. It gives me a line number and a character number, and then asks if I want to keep running scripts on the page. I'm not sure how to get into debug mode (or even if it's possible). I'm using Apache 2.0 to proxy to a single instance of Jetty 6 running the Lift app. (Multiple Lift apps in multiple Jetty instances.) More shortly... Chas. David Pollak wrote: On Wed, Apr 1, 2009 at 1:25 PM, Charles F. Munat c...@munat.com mailto:c...@munat.com wrote: I just got around to testing a couple of my Lift sites on IE6 and the results are depressing. One problem is that there is a recurrent JavaScript error. I presume this is coming from the Lift AJAX script since it pops up like clockwork. Does anyone know anything about this? Also, is the Lift AJAX script necessary for anything other than Comet? If I have a site that's using no AJAX or Comet, can I just turn this off? If so, how? No... it's also used for Garbage Collection. :-( What's the JS error? What is your server stack (e.g., Apache/Tomcat, NGinx/Jetty, etc.) Thanks! Chas. -- 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] Menu widget bugginess
I'm running the Lift Menu widget on my Mac via mvn jetty:run, then looking at it in IE Tester running in Windows XP Pro in a VMWare virtual machine on a Fedora 9 box on the same network. (Whew.) In IE 8 it works fine. In IE 7 and IE 6, on the CalendarWeekView and CalendarDayView pages, the third submenu link slides under the week or day view of the calendar and becomes inaccessible (and invisible as well). This is a typical problem with these piece of shit browsers that every self-respecting human on this planet should have rejected long ago... whoops. Did I write that out loud? The fix involves bigiframe.js, which I see is included in the toserve directory and on the page, so I'm not really sure why this problem is occurring. Isn't that what bigiframe.js is supposed to solve? Chas. --~--~-~--~~~---~--~~ 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: Newbie Scala syntax question re: parameterized types with bounds
Something that occurred to me recently along these lines - perhaps someone can disabuse me of this notion. In Java, such recursive types are necessary because you don't have abstract types. To refer to the implementation type in the declaring class you have to use the self-type. But in Scala, what application would not be satisfied by: trait Mapper { type T : Mapper } class User extends Mapper { type T = User } Is it just that the restriction on T is not sufficiently narrow? Kris On Fri, Mar 27, 2009 at 5:26 PM, Alex Boisvert boisv...@intalio.com wrote: Or said another way, MappedTextarea[ T : Mapper[T] ] declares a type parameter T and fixes the upper bound of the MappedTextarea type parameter to Mapper[T], which means that the type passed to MappedTextArea must be a subtype of Mapper. I, too, found this notation confusing at first and wished I could write MappedTextarea[ : Mapper[T] ] directly but declaring the T before its use is necessary to disambiguate it from existing class names. alex On Fri, Mar 27, 2009 at 1:52 PM, Stefan Scott stefanscottal...@gmail.com wrote: Hi - Sorry to be asking a Scala syntax question here in the Lift group, but I figured somebody here would know, since this Scala syntax occurs quite a bit in the Lift source code. When reading some of the Lift source I come across a particular Scala idiom involving parameterized types with bounds, whose semantics I'm unsure of. For example: class MappedTextarea[ T : Mapper[ T ] ] ( owner : T, maxLen: Int ) extends MappedString[ T ]( owner, maxLen ) { ... } What I'm unsure about here is the part where it says: T : Mapper[ T ] At first, this made no sense to me - how could a type T be a subtype of type Mapper[ T ] ? Then I guessed that maybe the two occurrences of T are unrelated to each other - ie, class MappedTextarea is parameterized over a type T, which must be a subtype of a type Mapper[ T ] -- where the second T is actually in a separate scope so that it has nothing to do with the first T. Is that what this really means? And, if that's really the case, then I guess the other occurrences of T later in the text: owner : T MappedString[ T ] are also referring to the first occurrence of T -- the type T which is upper-bounded by type Mapper[ T ]. Finally, does this mean that the above code could also have been written equivalently as follows: class MappedTextarea[ T : Mapper[ U ] ] ( owner : T, maxLen: Int ) extends MappedString[ T ]( owner, maxLen ) { ... } using U instead of T for the type parameter that's in a separate scope? Thanks for any help. - Stefan Scott --~--~-~--~~~---~--~~ 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] Widget CSS
I've been playing with the very cool TableSorter widget. Nice work. One hassle though -- it inserts its stylesheet *after* my stylesheet, so it overrides my styles. I could change things locally, but that's a hassle. Might be able to add important qualifiers or some trick like that, but it would be easiest if I could just turn that stylesheet off and use my own. Any luck on that, or do I have to reinvent the TableSorter? Chas. --~--~-~--~~~---~--~~ 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] Current snapshot
If I want to use the MenuWidget, what is the current version I should have in my pom.xml (for both the latest and greatest lift, and the latest widgets). Currently, I have this: dependency groupIdnet.liftweb/groupId artifactIdlift-webkit/artifactId version1.0/version /dependency dependency groupIdnet.liftweb/groupId artifactIdlift-widgets/artifactId version1.0/version /dependency When I try changing to 1.1-SNAPSHOT, I get this: [ERROR] BUILD ERROR [INFO] [INFO] Failed to resolve artifact. GroupId: net.liftweb ArtifactId: lift Version: 1.1-SNAPSHOT Reason: Unable to download the artifact from any repository net.liftweb:lift:pom:1.1-SNAPSHOT from the specified remote repositories: central (http://repo1.maven.org/maven2), scala-tools.org (http://scala-tools.org/repo-releases) Do I have to build this myself? Or is something wrong in my pom.xml? Thanks! Chas. --~--~-~--~~~---~--~~ 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: Current snapshot
Chas, Make sure you have: 1.1-SNAPSHOT as the version and you have http://scala-tools.org/repo-snapshots defined in the repository section. Cheers, Tim On Apr 2, 6:59 am, Charles F. Munat c...@munat.com wrote: If I want to use the MenuWidget, what is the current version I should have in my pom.xml (for both the latest and greatest lift, and the latest widgets). Currently, I have this: dependency groupIdnet.liftweb/groupId artifactIdlift-webkit/artifactId version1.0/version /dependency dependency groupIdnet.liftweb/groupId artifactIdlift-widgets/artifactId version1.0/version /dependency When I try changing to 1.1-SNAPSHOT, I get this: [ERROR] BUILD ERROR [INFO] [INFO] Failed to resolve artifact. GroupId: net.liftweb ArtifactId: lift Version: 1.1-SNAPSHOT Reason: Unable to download the artifact from any repository net.liftweb:lift:pom:1.1-SNAPSHOT from the specified remote repositories: central (http://repo1.maven.org/maven2), scala-tools.org (http://scala-tools.org/repo-releases) Do I have to build this myself? Or is something wrong in my pom.xml? Thanks! Chas. --~--~-~--~~~---~--~~ 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: Need for lightweight JPA archetype
I 100% see why you want a seperate module for persistance, but workflow wise I've found JPA a lot more productive if it's in the lift app as it means you don't have to keep deploying the JAR into your local repo. Perhaps lift-jpa-archetype-blank-split lift-jpa-archetype-blank-consolidated Thoughts? Tim On Apr 2, 7:33 am, Derek Chen-Becker dchenbec...@gmail.com wrote: I thought I had sent out an email on the list earlier asking what people would want to see in such an archetype. As a base, probably a master POM with a module for the persistence unit and a module for the Lift side of things. The persistence unit could have a skeleton persistence.xml in the right place but otherwise be empty. The Lift side could have the basic Boot and perhaps a Model class set up with a placeholder persistence setup. Thoughts? Derek On Wed, Apr 1, 2009 at 3:16 PM, Timothy Perrett timo...@getintheloop.euwrote: Glad im not the only one ;-) On Apr 1, 11:15 pm, Viktor Klang viktor.kl...@gmail.com wrote: Timmy, yeah, I can see that coming in handy. Cheers, Viktor On Wed, Apr 1, 2009 at 11:13 PM, Tim Perrett timo...@getintheloop.eu wrote: Guys, Do people see room for a blank JPA archetype just like we have blank and basic of normal lift archetypes? IMO, whilst its great having the basic one for learning and examples, having something thats a workable starting point without having to remove code etc would be helpful. I appreciate this is a bit lazy - but i don't think it would take much work and would provide a neat solution Thoughts? Tim -- Viktor Klang Senior Systems Analyst --~--~-~--~~~---~--~~ 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 -~--~~~~--~~--~--~---