[Lift] Comet logger initialized too early?

2009-08-13 Thread Jeppe Nejsum Madsen

Hi,

In trying to move to slf4j/logback I encountered an error when I removed
log4j from the cp:

09:53:50.297 [main] ERROR org.mortbay.log - failed LiftFilter
java.lang.NoClassDefFoundError: org/apache/log4j/LogManager
at net.liftweb.util.LogBoot$.log4jIsConfigured$1(Log.scala:113) 
[lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.util.LogBoot$._log4JSetup(Log.scala:129) 
[lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.util.LogBoot$$anonfun$2.apply(Log.scala:95) 
[lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.util.LogBoot$$anonfun$2.apply(Log.scala:95) 
[lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.util.LogBoot$.checkConfig(Log.scala:93) 
[lift-util-1.1-SNAPSHOT.jar:na]
at 
net.liftweb.util.LogBoot$.net$liftweb$util$LogBoot$$_logger(Log.scala:139) 
[lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.util.LogBoot$$anonfun$3.apply(Log.scala:141) 
[lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.util.LogBoot$$anonfun$3.apply(Log.scala:141) 
[lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.http.LiftRules$.init(LiftRules.scala:654)
[lift-webkit-1.1-SNAPSHOT.jar:na]

I would seem that the Comet logger is initialised before lift is booted
(and thus using the default log config):

from LiftRules:

var cometLogger: LiftLogger = {
val ret = LogBoot.loggerByName(comet_trace)
ret.level = LiftLogLevels.Off
ret
  }

Shouldn't this initialization be moved to after lift is booted?

/Jeppe

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~--~~~~--~~--~--~---



[Lift] Re: Cant generating liftweb document from source

2009-08-13 Thread george

when I do mvn install scala:doc i get

[WARNING] /Users/george/Sites/git/liftweb/lift-util/src/main/scala/net/
liftweb/util/CurrencyZone.scala:32: error: AU is already defined as
package AU
[WARNING] object AU extends CurrencyZone {
[WARNING]^
[WARNING] /Users/george/Sites/git/liftweb/lift-util/src/main/scala/net/
liftweb/util/CurrencyZone.scala:39: error: US is already defined as
package US
[WARNING] object US extends CurrencyZone {
[WARNING]^
[WARNING] /Users/george/Sites/git/liftweb/lift-util/src/main/scala/net/
liftweb/util/CurrencyZone.scala:46: error: GB is already defined as
package GB
[WARNING] object GB extends CurrencyZone {
[WARNING]^
[WARNING] /Users/george/Sites/git/liftweb/lift-util/src/main/scala/net/
liftweb/util/CurrencyZone.scala:53: error: EU is already defined as
package EU
[WARNING] object EU extends CurrencyZone {
[WARNING]^
[WARNING] /Users/george/Sites/git/liftweb/lift-util/src/main/scala/net/
liftweb/util/Mailer.scala:27: error: Mailer is already defined as
package Mailer
[WARNING] object Mailer {
[WARNING]^
[WARNING] /Users/george/Sites/git/liftweb/lift-util/src/main/scala/net/
liftweb/util/RE.scala:27: error: RE is already defined as package RE
[WARNING] object RE {
[WARNING]^
[WARNING] Aug 13, 2009 9:03:31 AM
org.scala_tools.vscaladoc.HtmlRenderer render
[WARNING] INFO: write page for overview
[WARNING] Aug 13, 2009 9:03:32 AM
org.scala_tools.vscaladoc.HtmlRenderer render
[WARNING] INFO: write page for all-classes (list)
[WARNING] Aug 13, 2009 9:03:32 AM
org.scala_tools.vscaladoc.HtmlRenderer render
[WARNING] INFO: write index.html
[WARNING] Aug 13, 2009 9:03:32 AM
org.scala_tools.vscaladoc.HtmlRenderer render
[WARNING] INFO: write doc for  each classes
[WARNING] 6 errors found
[INFO]

[ERROR] BUILD ERROR
[INFO]

[INFO] wrap: org.apache.maven.reporting.MavenReportException: wrap:
command line returned non-zero value:1


it seems to have generated the documentation. but the packages are not
combined into a one set of docs. how do we do that?


On Aug 11, 10:22 pm, Timothy Perrett timo...@getintheloop.eu wrote:
 Can you try:

 mvn install scala:doc

 Cheers, Tim

 On Aug 11, 8:49 pm, Lance Zheng lanc...@gmail.com wrote:



  I try to generate doc but got an 
  error.http://wiki.liftweb.net/index.php/Generating_Lift_scaladocs_locally
  my OS is vista and maven's version is 2.2.0

  D:\scalasrc\liftwebmvn -v
  Apache Maven 2.2.0 (r788681; 2009-06-26 21:04:01+0800)
  Java version: 1.6.0_13
  Java home: C:\Program Files\Java\jdk1.6.0_13\jre
  Default locale: zh_CN, platform encoding: GBK
  OS name: windows vista version: 6.0 arch: x86 Family: windows

  D:\scalasrc\liftwebmvn scala:doc
  ..
  [WARNING] [Fatal Error] :1:38: Open quote is expected for attribute
  {1} associated with an  elemen
  t type  href.
  [WARNING] Exception in thread main org.xml.sax.SAXParseException:
  Open quote is expected for attri
  bute {1} associated with an  element type  href.
  [WARNING]       at
  com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse
  (AbstractSAXPar
  ser.java:1231)
  [WARNING]       at
  com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl
  $JAXPSAXParser.parse(SAXPars
  erImpl.java:522)
  [WARNING]       at javax.xml.parsers.SAXParser.parse(SAXParser.java:
  395)
  [WARNING]       at scala.xml.parsing.FactoryAdapter.loadXML
  (FactoryAdapter.scala:292)
  [WARNING]       at scala.xml.parsing.NoBindingFactoryAdapter.loadXML
  (NoBindingFactoryAdapter.scala:6
  0)
  [WARNING]       at scala.xml.XML$.load(XML.scala:68)
  [WARNING]       at org.scala_tools.vscaladoc.DocUtil$.load
  (DocUtil.scala:28)
  [WARNING]       at org.scala_tools.vscaladoc.Services$cfg$.setFrom
  (Services.scala:38)
  [WARNING]       at org.scala_tools.vscaladoc.Main$.process(Main.scala:
  81)
  [WARNING]       at org.scala_tools.vscaladoc.Main$.main(Main.scala:
  107)
  [WARNING]       at org.scala_tools.vscaladoc.Main.main(Main.scala)
  [INFO]
  
  [ERROR] BUILD ERROR
  [INFO]
  
  [INFO] wrap: org.apache.maven.reporting.MavenReportException: wrap:
  command line returned non-zero v
  alue:1
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~--~~~~--~~--~--~---



[Lift] A question about H2 in the pocketchange example

2009-08-13 Thread Caesar You

i have downloaded H2 client and tried to connect to pca_example
database.
but how?
i dont know the username and password. and i tried to find it out from
the source code, but nothing.

thanks

--~--~-~--~~~---~--~~
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] any idea when we can cut a 1.1-M5 release?

2009-08-13 Thread James Strachan

Now that the APIs have changed to abstract the servlet stuff, I'd
really like a 1.1-M5 release. Anyone any objections to cutting one
soon?

-- 
James
---
http://macstrac.blogspot.com/

Open Source Integration
http://fusesource.com/

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~--~~~~--~~--~--~---



[Lift] Re: any idea when we can cut a 1.1-M5 release?

2009-08-13 Thread Timothy Perrett


To what end? Not a lot of code has gone in since the 1.1-m4

Cheers, Tim

On 13/08/2009 10:59, James Strachan james.strac...@gmail.com wrote:

 
 Now that the APIs have changed to abstract the servlet stuff, I'd
 really like a 1.1-M5 release. Anyone any objections to cutting one
 soon?



--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~--~~~~--~~--~--~---



[Lift] Mapper: Is it possible to avoid the n+1 selects?

2009-08-13 Thread Jeppe Nejsum Madsen

Hi

I have a mapped object A  with a foreign key to mapped object B.

I need to display the information (A+B) in a table. The not so smart way
is to first query on the As and then for each A, get the B. This
results in n+1 selects.

Is it possible to ask Mapper, when querying for the As, that it should
join with Bs table to fetch the B at the same time (ie the equivalent of
join fetching in Hibernate)? 

/Jeppe


 

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~--~~~~--~~--~--~---



[Lift] Re: any idea when we can cut a 1.1-M5 release?

2009-08-13 Thread David Pollak
On Thu, Aug 13, 2009 at 2:59 AM, James Strachan james.strac...@gmail.comwrote:


 Now that the APIs have changed to abstract the servlet stuff, I'd
 really like a 1.1-M5 release. Anyone any objections to cutting one
 soon?


We do time-based releases, so M5 is going to come at the end of August.



 --
 James
 ---
 http://macstrac.blogspot.com/

 Open Source Integration
 http://fusesource.com/

 



-- 
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: any idea when we can cut a 1.1-M5 release?

2009-08-13 Thread James Strachan

2009/8/13 Timothy Perrett timo...@getintheloop.eu:


 To what end? Not a lot of code has gone in since the 1.1-m4

I just wanna be able to use the new APIs (which avoid the explicit use
of servlets) without being on the bleeding edge. e.g. S.render()
changed to not take HttpServletRequest.


-- 
James
---
http://macstrac.blogspot.com/

Open Source Integration
http://fusesource.com/

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~--~~~~--~~--~--~---



[Lift] Re: A question about H2 in the pocketchange example

2009-08-13 Thread Derek Chen-Becker
The JDBC URL that we use for pocketchange makes an embedded server (no
external connections, AFAIK). Someone just posted a thread on the list
recently about adding a line to Boot.boot that would set up the H2 web
console in the Lift project, which may work for you:

http://groups.google.com/group/liftweb/browse_thread/thread/8a671792a51c7336?hl=en#

Derek

On Thu, Aug 13, 2009 at 3:42 AM, Caesar You ucae...@gmail.com wrote:


 i have downloaded H2 client and tried to connect to pca_example
 database.
 but how?
 i dont know the username and password. and i tried to find it out from
 the source code, but nothing.

 thanks

 


--~--~-~--~~~---~--~~
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: Mapper: Is it possible to avoid the n+1 selects?

2009-08-13 Thread Derek Chen-Becker
You should be able to use the PreCache QueryParam to tell Mapper to
pre-fetch the mapped object:

http://scala-tools.org/scaladocs/liftweb/1.0/net/liftweb/mapper/PreCache.html

Derek

On Thu, Aug 13, 2009 at 6:11 AM, Jeppe Nejsum Madsen je...@ingolfs.dkwrote:


 Hi

 I have a mapped object A  with a foreign key to mapped object B.

 I need to display the information (A+B) in a table. The not so smart way
 is to first query on the As and then for each A, get the B. This
 results in n+1 selects.

 Is it possible to ask Mapper, when querying for the As, that it should
 join with Bs table to fetch the B at the same time (ie the equivalent of
 join fetching in Hibernate)?

 /Jeppe




 


--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~--~~~~--~~--~--~---



[Lift] Re: Comet logger initialized too early?

2009-08-13 Thread David Pollak
I'll check in a fix in a little.  Thanks for the bug report.

On Thu, Aug 13, 2009 at 1:27 AM, Jeppe Nejsum Madsen je...@ingolfs.dkwrote:


 Hi,

 In trying to move to slf4j/logback I encountered an error when I removed
 log4j from the cp:

 09:53:50.297 [main] ERROR org.mortbay.log - failed LiftFilter
 java.lang.NoClassDefFoundError: org/apache/log4j/LogManager
at net.liftweb.util.LogBoot$.log4jIsConfigured$1(Log.scala:113)
 [lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.util.LogBoot$._log4JSetup(Log.scala:129)
 [lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.util.LogBoot$$anonfun$2.apply(Log.scala:95)
 [lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.util.LogBoot$$anonfun$2.apply(Log.scala:95)
 [lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.util.LogBoot$.checkConfig(Log.scala:93)
 [lift-util-1.1-SNAPSHOT.jar:na]
at
 net.liftweb.util.LogBoot$.net$liftweb$util$LogBoot$$_logger(Log.scala:139)
 [lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.util.LogBoot$$anonfun$3.apply(Log.scala:141)
 [lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.util.LogBoot$$anonfun$3.apply(Log.scala:141)
 [lift-util-1.1-SNAPSHOT.jar:na]
at net.liftweb.http.LiftRules$.init(LiftRules.scala:654)
[lift-webkit-1.1-SNAPSHOT.jar:na]

 I would seem that the Comet logger is initialised before lift is booted
 (and thus using the default log config):

 from LiftRules:

 var cometLogger: LiftLogger = {
val ret = LogBoot.loggerByName(comet_trace)
ret.level = LiftLogLevels.Off
ret
  }

 Shouldn't this initialization be moved to after lift is booted?

 /Jeppe

 



-- 
Lift, the simply functional web framework http://liftweb.net
Beginning Scala http://www.apress.com/book/view/1430219890
Follow me: http://twitter.com/dpp
Git some: http://github.com/dpp

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~--~~~~--~~--~--~---



[Lift] Re: Mapper: Is it possible to avoid the n+1 selects?

2009-08-13 Thread Jeppe Nejsum Madsen

Derek Chen-Becker dchenbec...@gmail.com writes:

 You should be able to use the PreCache QueryParam to tell Mapper to
 pre-fetch the mapped object:

 http://scala-tools.org/scaladocs/liftweb/1.0/net/liftweb/mapper/PreCache.html

Ahh nice. I missed that one, Thanks

/Jeppe

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~--~~~~--~~--~--~---



[Lift] Welcome Joni Freeman to the Lift committers

2009-08-13 Thread David Pollak
Folks,

I'm pleased to announce that Joni Freeman has joined the Lift committers.

Joni will be adding his high performance JSON library as a module in Lift...
and I certainly hope that Lift's JSON support will improve.

Please join me in welcoming Joni!

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: Welcome Joni Freeman to the Lift committers

2009-08-13 Thread marius d.

Welcome on board Joni !

On Aug 13, 7:06 pm, David Pollak feeder.of.the.be...@gmail.com
wrote:
 Folks,

 I'm pleased to announce that Joni Freeman has joined the Lift committers.

 Joni will be adding his high performance JSON library as a module in Lift...
 and I certainly hope that Lift's JSON support will improve.

 Please join me in welcoming Joni!

 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: [Lift committers] Welcome Joni Freeman to the Lift committers

2009-08-13 Thread Meredith Gregory
Joni,

Welcome!

Best wishes,

--greg

On Thu, Aug 13, 2009 at 9:06 AM, David Pollak feeder.of.the.be...@gmail.com
 wrote:

 Folks,

 I'm pleased to announce that Joni Freeman has joined the Lift committers.

 Joni will be adding his high performance JSON library as a module in
 Lift... and I certainly hope that Lift's JSON support will improve.

 Please join me in welcoming Joni!

 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

 



-- 
L.G. Meredith
Managing Partner
Biosimilarity LLC
1219 NW 83rd St
Seattle, WA 98117

+1 206.650.3740

http://biosimilarity.blogspot.com

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~--~~~~--~~--~--~---



[Lift] 1.0.1 release plan, forward porting changes

2009-08-13 Thread Derek Chen-Becker
Hi,
I have some code checked in on the 1.0_maint branch to fix the issues
with PostgreSQL doubles and Oracle autoincrement primary keys (issue #37).
If no one else has anything that needs to go into 1.0.1, I'll move ahead
with releasing 1.0.1 and setting 1.0_maint to 1.0.2-SNAPSHOT. Also, does
anyone have objections to forward-porting the changes I made to get
PostgreSQL and Oracle squared away? The changes are primarily to
DriverTypes, with some minor mods to Schemifier and MetaMapper to accomodate
some new driver methods. You can see the changes here:

PostgreSQL:

http://github.com/dpp/liftweb/commit/54e6f64675d163a4fd7ba1ce0f14da8e4dc94aa2

Oracle:

http://github.com/dpp/liftweb/commit/eda5e86092fec035b3f6326e05ba75fa1396b4bc

Derek

--~--~-~--~~~---~--~~
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] how to do basic joins

2009-08-13 Thread harryh

I have 3 classes like so

class Foo extends LongKeyedMapper[Foo] with IdPK
  def getBazes = {
Baz.findAll(...)
  }
}

class Bar extends LongKeyedMapper[Bar] with IdPK
  object fooid extends MappedLongForeignKey(this, Foo)
}

class Baz extends LongKeyedMapper[Baz] with IdPK
  object barid extends MappedLongForeignKey(this, Bar)
}

How do I write Baz.findAll(...) so it will give me all the Bazes that
point to any Bars that point to the Foo.  In SQL I would write
something like this:

SELECT * FROM bazzes WHERE bazzes.barid = bars.id AND bars.fooid =
111;   (where 111 is foo.id)

I feel like I should be using ByRef here?  But it's not clear to me
how to do it.

-harryh

--~--~-~--~~~---~--~~
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: how to do basic joins

2009-08-13 Thread jon

One possibility is to do Baz.findAllBy{PreparedStatement,InsecureSql}
(section 6.3.2 of lift book)

I am also curious if there is a safe way to construct a join.

- Jon

On Aug 13, 3:41 pm, harryh har...@gmail.com wrote:
 I have 3 classes like so

 class Foo extends LongKeyedMapper[Foo] with IdPK
   def getBazes = {
     Baz.findAll(...)
   }

 }

 class Bar extends LongKeyedMapper[Bar] with IdPK
   object fooid extends MappedLongForeignKey(this, Foo)

 }

 class Baz extends LongKeyedMapper[Baz] with IdPK
   object barid extends MappedLongForeignKey(this, Bar)

 }

 How do I write Baz.findAll(...) so it will give me all the Bazes that
 point to any Bars that point to the Foo.  In SQL I would write
 something like this:

 SELECT * FROM bazzes WHERE bazzes.barid = bars.id AND bars.fooid =
 111;   (where 111 is foo.id)

 I feel like I should be using ByRef here?  But it's not clear to me
 how to do it.

 -harryh
--~--~-~--~~~---~--~~
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: how to do basic joins

2009-08-13 Thread David Pollak
On Thu, Aug 13, 2009 at 12:41 PM, harryh har...@gmail.com wrote:


 I have 3 classes like so

 class Foo extends LongKeyedMapper[Foo] with IdPK
  def getBazes = {
Baz.findAll(...)
  }
 }


Baz.findAll(In.fk(Baz.barid, By(Bar.fooid, this.id)))




 class Bar extends LongKeyedMapper[Bar] with IdPK
  object fooid extends MappedLongForeignKey(this, Foo)
 }

 class Baz extends LongKeyedMapper[Baz] with IdPK
  object barid extends MappedLongForeignKey(this, Bar)
 }

 How do I write Baz.findAll(...) so it will give me all the Bazes that
 point to any Bars that point to the Foo.  In SQL I would write
 something like this:

 SELECT * FROM bazzes WHERE bazzes.barid = bars.id AND bars.fooid =
 111;   (where 111 is foo.id)

 I feel like I should be using ByRef here?  But it's not clear to me
 how to do it.

 -harryh

 



-- 
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: SOAP web services?

2009-08-13 Thread Meredith Gregory
All,

As a follow up, i was able to get the Apache Axis2 maven plugin to accept
WSDL 2.0. Below is what i had to add to my pom.xml. Attached is an example
that will get you an Http binding that should work RESTfully.

Best wishes,

--greg

pluginRepositories
...
   pluginRepository
  idplugin.axis2.apache.org/id
  nameApache Axis2 Repository/name
  urlhttp://apache.sunsite.ualberta.ca/ws/axis2/tools/1_4_1/url
/pluginRepository
/pluginRepositories



plugins
...
plugin
groupIdorg.apache.axis2/groupId
artifactIdaxis2-wsdl2code-maven-plugin/artifactId
version1.4.1/version
executions
  execution
goals
  goalwsdl2code/goal
/goals
  /execution
/executions
configuration
  packageName${groupId}.${artifactId}.model/packageName
  wsdlVersion2.0/wsdlVersion
  generateAllClassestrue/generateAllClasses
  generateServerSidetrue/generateServerSide
  generateServerSideInterfacetrue/generateServerSideInterface
  generateServicesXmltrue/generateServicesXml
  generateTestCasetrue/generateTestCase
/configuration
  /plugin
/plugins

2009/8/11 Meredith Gregory lgreg.mered...@gmail.com

 Marius,

 The original design goals of WSDL were very straightforward:

- a Port Type is a set of Message Types governing all the messages
arriving on the Port
- A Message Type is given precisely by an XML Schema (e.g. an XSD)
- A Port is instanced by binding a Port Type to an Endpoint (URL)
supporting a transport protocol

 In symbols, WSDL was intended to be able to make statements of the form

- URL+Transport : { XMLSchema1, ..., XMLSchemaN }
- Notice the close correlation between this and the statement you see
on the Scala REPL all the time:
- ScalaExpr ret
   - res1 : ScalaType

 URL is the location of the resource/instance in the same way that res1
 provides a location that the Scala REPL can use to look up the instance.
 PortType is very much like a ScalaType. In the case of typing at the Scala
 REPL from a command shell there is no question of transport and any
 encoding/decoding necessary. However, if one had a more remote network
 access to the Scala REPL that did involve some issues around transport and
 encoding/decoding, then these two cases would be isomorphic.

 BTW, this lines up nearly perfectly with the idea of sorts and sorting in
 Milner's π-calculus.

 Because message exchange usually involves parameter-passing  because of
 confusion about the role of Object Technology in all this, WSDL was
 extended with the notion of Operation. This could have been done more
 cleanly, but was not. Not everyone involved in WSDL's design had the same
 picture in their minds of what they were attempting to accomplish.

 As for what happens today, i could easily imaging WSDL and/or WSDL+SOAP
 over RabbitMQ, for example. i think something like this is considerably
 better than JSON over transport. The basic reason for this is
 straightforward. XMLSchema are a form of typing discipline. So, you get a
 typing discipline for messaging-style applications that fits well with the
 typing discipline of a language like Scala.

 This could, for example, play out very nicely in an actor framework. An
 actor's mailbox is a good thing to locate at an URL. Then you have
 statements of the form

- URL + Transport/Actor : { MessageType1, ..., MessageTypeN }

 Today, Scala actors do not even support statements of this basic form,
 though they would greatly enhance the actor package.

 Beyond this, you can imagine putting constraints on the order of messages.
 Here's a general scheme

- Actor : ( { MsgType1 - Type1, ..., MsgTypeN - TypeN },
RegularExpressionOver(MsgType1,...,MsgTypeN) )
- The first element in the pair just maps message type names to Scala
types (or the types of some host language) and the second element in the
pair says the order you expect to see messages in the mailbox.
- Here's an example: ( { Init - OpenSession( id, pwd ), Read -
ReadDb( ... ), Update - UpdateDB( ... ), Finish - CloseSession( ... ) },
Init.(Read+Update)*.Finish )
   - It says that the only legal sequences of messages in the mbox are
   of the form Init :: Read-or-Update :: ... :: Read-or-Update :: FInish.


 Best wishes,

 --greg


 On Tue, Aug 11, 2009 at 9:27 AM, marius d. marius.dan...@gmail.comwrote:




 On Aug 11, 7:09 pm, Meredith Gregory lgreg.mered...@gmail.com wrote:
  Tim,
 
  i was under the same impression, but then read a couple of IBM
 comparison
  articles and a WSO2 blog and it seemed that the WSDL 2.0 was gaining
 ground.
  Further, the tooling for WSDL, with integration into all the major
 IDE's,
  has been significantly more developed than the WADL tooling. However,
  yesterday i tried a simple example with a schema-valid WSDL 2.0 xml
 document
  for a simple service with 1 operation and the Apache Axis2 tool barfed
 on
  the fact that the schema pointed to in the 

[Lift] Re: how to do basic joins

2009-08-13 Thread David Pollak
Sorry... try:


class Foo extends LongKeyedMapper[Foo] with IdPK {
 def getBazes = {
   Baz.findAll(In(Baz.barid, Bar.id, By(Bar.fooid, this)))
 }
}

object Foo extends Foo with LongKeyedMetaMapper[Foo]

class Bar extends LongKeyedMapper[Bar] with IdPK {
 object fooid extends MappedLongForeignKey(this, Foo)
}

class Baz extends LongKeyedMapper[Baz] with IdPK {
 object barid extends MappedLongForeignKey(this, Bar)
}

object Baz extends Baz with LongKeyedMetaMapper[Baz]

object Bar extends Bar with LongKeyedMetaMapper[Bar]


On Thu, Aug 13, 2009 at 1:48 PM, harryh har...@gmail.com wrote:


 Foo = Venue, Bar = VenueAlias, Baz = Checkin

 lazy val checkins = Checkin.findAll(In.fk(Checkin.aliasid, By
 (VenueAlias.venueid, this.id)))

 confusing error message on compile:

  found   : com.harryh.model.Checkin.aliasid.type (with underlying type
 object com.harryh.model.Checkin.aliasid)
  required: net.liftweb.mapper.MappedForeignKey
 [?,?,com.harryh.model.Checkin]
 Note that implicit conversions are not applicable because they are
 ambiguous:
  both method mapToType in object MappedField of type [T,A :
 net.liftweb.mapper.Mapper[A]](net.liftweb.mapper.MappedField[T,A])T
  and method mapToType in object MappedField of type [T,A :
 net.liftweb.mapper.Mapper[A]](net.liftweb.mapper.MappedField[T,A])T
  are possible conversion functions from
 com.harryh.model.Checkin.aliasid.type to
 net.liftweb.mapper.MappedForeignKey[?,?,com.harryh.model.Checkin]
  lazy val checkins = Checkin.findAll(In.fk(Checkin.aliasid, By
 (VenueAlias.venueid, this.id)))


 On Aug 13, 4:20 pm, David Pollak feeder.of.the.be...@gmail.com
 wrote:
  On Thu, Aug 13, 2009 at 12:41 PM, harryh har...@gmail.com wrote:
 
   I have 3 classes like so
 
   class Foo extends LongKeyedMapper[Foo] with IdPK
def getBazes = {
  Baz.findAll(...)
}
   }
 
  Baz.findAll(In.fk(Baz.barid, By(Bar.fooid, this.id)))
 
 
 
 
 
   class Bar extends LongKeyedMapper[Bar] with IdPK
object fooid extends MappedLongForeignKey(this, Foo)
   }
 
   class Baz extends LongKeyedMapper[Baz] with IdPK
object barid extends MappedLongForeignKey(this, Bar)
   }
 
   How do I write Baz.findAll(...) so it will give me all the Bazes that
   point to any Bars that point to the Foo.  In SQL I would write
   something like this:
 
   SELECT * FROM bazzes WHERE bazzes.barid = bars.id AND bars.fooid =
   111;   (where 111 is foo.id)
 
   I feel like I should be using ByRef here?  But it's not clear to me
   how to do it.
 
   -harryh
 
  --
  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] Welcome Joni Freeman to the Lift committers

2009-08-13 Thread David Pollak
From Joni:

Thanks everyone, it is great to be part of growing Lift community!

Here's a short description of current state of lift-json module (I
haven't pushed it to master yet, it currently lives in my fork at
http://github.com/jonifreeman/liftweb/tree/master Will push to master
real soon.).

The module provides:

* Fast JSON parser

Much faster than scala.util.parsing.json.JSON parser, bit slower than
fastest known Java JSON parser:
http://github.com/jonifreeman/liftweb/blob/e2e59b63a427258e7dde9b0877691322c29c8552/lift-json/benchmark/README.md

* XPath like queries

Examples:
http://github.com/jonifreeman/liftweb/tree/e2e59b63a427258e7dde9b0877691322c29c8552/lift-json

* Extractors (experimental)

Case classes can be used to extract values from JSON.

Examples:
http://github.com/jonifreeman/liftweb/blob/28dbf1a221df97f27bd788ae57c005407547d480/lift-json/src/test/scala/net/liftweb/json/ExtractionExamples.scala

* DSL to produce valid JSON

Examples:
http://github.com/jonifreeman/liftweb/tree/e2e59b63a427258e7dde9b0877691322c29c8552/lift-json

* Pretty and compact printing

Uses similar system as Philip Wadler described:
http://homepages.inf.ed.ac.uk/wadler/papers/prettier/prettier.pdf


If you have time please review, hack and play with this. Now is a
great time to tweak the APIs since this is not published yet.

Cheers Joni





-- 
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: how to do basic joins

2009-08-13 Thread harryh

Now I get an NPE :(

Message: java.lang.NullPointerException
net.liftweb.mapper.In$$anon$3.init(MetaMapper.scala:1206)
net.liftweb.mapper.In$.apply(MetaMapper.scala:1200)
com.harryh.model.Venue.checkins(Venue.scala:40)

-harryh

--~--~-~--~~~---~--~~
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: SOAP web services?

2009-08-13 Thread Meredith Gregory
Tim,

How do you compose JAX-WS generated services with lift or do you? i'm trying
to enumerate the ways to do this.

Best wishes,

--greg

On Thu, Aug 6, 2009 at 5:15 PM, Timothy Perrett timo...@getintheloop.euwrote:



 Myself and Viktor are two committers who do a lot of SOAP work - right now,
 the best route forward it to use the Java JAX-WS code and call into it with
 a scala wrapper - this is exactly what I do and it works perfectly.

 Because there is toll free calling of Java code, there is little point in
 porting such massive projects to Scala; just make a wrapper that suits your
 needs.

 In my environment I have about 40+ endpoints, with hundreds of methods so I
 just made a scala wrapper that lets me do:

 DriverManager.whateverdriver.myMethod(params) // Box[T]

 IMO, that's a damn lot easier than calling a boat load of Java (of course
 its doing the under the hood, but like I said, its just a wrapper).

 HTH

 Cheers, Tim

 On 06/08/2009 16:26, Jacek Furmankiewicz jace...@gmail.com wrote:

 
  I was reading through the Lift book PDF and it mentions only REST-
  style web services.
 
  In our case, we need to look at re-implementing a set of existing SOAP
  web services (is there anything like 'wsdl2scala' anywhere?).
 
  I would appreciate any best practices and suggestions for implementing
  SOAP web services in the context of a larger Lift app (and Scala in
  general).
 
  
 



 



-- 
L.G. Meredith
Managing Partner
Biosimilarity LLC
1219 NW 83rd St
Seattle, WA 98117

+1 206.650.3740

http://biosimilarity.blogspot.com

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Lift group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~--~~~~--~~--~--~---



[Lift] Dynamic URL creation

2009-08-13 Thread pabraham

Hello there,

I'm stumped!  I've got snippet code that is like this:

val nextpage: String = ... calculate next page number ...

bind(c, xhtml,
  next - a href=/customer/page-{nextpage}next/a,
  back - back
)

But when the page is generated, the link is /customer/page-
{nextpage}, not /customer/page-2, /customer/page-3, etc.

How do I get the nextpage value in my link?  My template is just
c:backc:next with the surrounding tags.

Paul.

--~--~-~--~~~---~--~~
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: Dynamic URL creation

2009-08-13 Thread Chris Reeves
Try
bind(c, xhtml,
 next - a href={ /customer/page- + nextpage}next/a,
 back - back
   )

I ran into something similar earlier today.

Thanks, Chris

On Thu, Aug 13, 2009 at 6:21 PM, pabraham paulabraham...@googlemail.comwrote:


 Hello there,

 I'm stumped!  I've got snippet code that is like this:

val nextpage: String = ... calculate next page number ...

bind(c, xhtml,
  next - a href=/customer/page-{nextpage}next/a,
  back - back
)

 But when the page is generated, the link is /customer/page-
 {nextpage}, not /customer/page-2, /customer/page-3, etc.

 How do I get the nextpage value in my link?  My template is just
 c:backc:next with the surrounding tags.

 Paul.

 


--~--~-~--~~~---~--~~
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: Dynamic URL creation

2009-08-13 Thread David Pollak
On Thu, Aug 13, 2009 at 3:21 PM, pabraham paulabraham...@googlemail.comwrote:


 Hello there,

 I'm stumped!  I've got snippet code that is like this:

val nextpage: String = ... calculate next page number ...

bind(c, xhtml,
  next - a href=/customer/page-{nextpage}next/a,


next - a href={/customer/page-+urlEncode(nextPage)}next/a



  back - back
)

 But when the page is generated, the link is /customer/page-
 {nextpage}, not /customer/page-2, /customer/page-3, etc.

 How do I get the nextpage value in my link?  My template is just
 c:backc:next with the surrounding tags.

 Paul.

 



-- 
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 question about H2 in the pocketchange example

2009-08-13 Thread ssid

You should be able to connect to the db with the following steps:

1) start the H2 webinterface/server with something like
java -cp h2-1.1.113.jar org.h2.tools.Server
2) point your browser to localhost:8082
3) Use Generic H2 (Embedded),
driver class: org.h2.Driver
JDBC URL: something like jdbc:h2:~/YourProjectPath/todo/
pca_example
4) Leave User Name and Password blank
5) Test Connection and Connect should now work

Best regards


On Aug 13, 11:42 am, Caesar You ucae...@gmail.com wrote:
 i have downloaded H2 client and tried to connect to pca_example
 database.
 but how?
 i dont know the username and password. and i tried to find it out from
 the source code, but nothing.

 thanks

--~--~-~--~~~---~--~~
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] Symlinks and Javascript Files

2009-08-13 Thread Peter Robinett

My Lift project is in a git repository and to the repository I've
added a submodule. Since right now I only want one javascript file
from this submodule, my thought was to make the directory src/main/
webroot/js and then make a symbolic link to the javascript file in
question. Unfortunately, when I try to request the file at
http://localhost:9090/js/jquery.sparkline.js, I get a 403 response
that says the page is not defined in my sitemap. There was no note of
the request in the stdout.

Thinking that the js subdirectory is the problem, I then tried making
the symlink in the webroot directory and got a 404 error. On stdout it
said:
2009-08-13 18:38:23.051::WARN:  Aliased resource: file:/Users/peter/
Sites/Equal%20Networks/server/src/main/webapp/
jquery.sparkline.js==file:/Users/peter/Sites/Equal%20Networks/server/
vendors/dashboard/www/jquery.sparkline.js

From this I gather than Lift is troubled by the presence of a symlink
and refused to acknowledge its presence. Is this true? If so, why?

From the thread last week on ExtJS I see a discussion on loading files
in webroot, including supporting a css directory by adding the
following to Boot.scala:
ResourceServer.allow {
  case css :: _ = true
}

I already have a css file being served from a directory in the exact
same location without any additions to Boot.scala. Nonetheless, I
tried the following:
ResourceServer.allow {
  case js :: _ = true
}

Unfortunately, this had no effect. So, how can I get my symlinked
javascript to be server? Or should I just give up on symlinks
altogether (I'm not a git master, so perhaps that was the wrong
approach anyway).

Peter Robinett

PS I'm on 1.1-SNAPSHOT.
PPS The YUI Compressor works well. Very cool.
--~--~-~--~~~---~--~~
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] Bind problem

2009-08-13 Thread Naftoli Gugenheim

Is this according to the specs?
bind(x, x:ax:b //x:a, b - c)
just returns the original NodeSeq untransformed.


--~--~-~--~~~---~--~~
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: how to do basic joins

2009-08-13 Thread David Pollak
Please post a reproducible example.  I use this call pretty regularly and
have not seen any problems.
Also, what version of Lift are you using?

On Thu, Aug 13, 2009 at 2:31 PM, harryh har...@gmail.com wrote:


 Now I get an NPE :(

 Message: java.lang.NullPointerException
net.liftweb.mapper.In$$anon$3.init(MetaMapper.scala:1206)
net.liftweb.mapper.In$.apply(MetaMapper.scala:1200)
com.harryh.model.Venue.checkins(Venue.scala:40)

 -harryh

 



-- 
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: Bind problem

2009-08-13 Thread David Pollak
On Thu, Aug 13, 2009 at 7:09 PM, Naftoli Gugenheim naftoli...@gmail.comwrote:


 Is this according to the specs?


Yes.  a:x fails binding and by default, it is returned.  There is no
nesting or recursion in the seeking of the nested elements.



 bind(x, x:ax:b //x:a, b - c)
 just returns the original NodeSeq untransformed.


 



-- 
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] Attributes question

2009-08-13 Thread Naftoli Gugenheim

Why was the decision made, if I understand correctly, that normal attributes 
are not preserved in a bound node, and are are only available for the snippet's 
usage, and if you want the attribute to be sticky you have to prefix it with 
lift:? Wouldn't it be better the other way?
One of lift's design goals is to help keep the static html in the view and the 
logic in the code, and to provide a templating system that doesn't interfere 
with visual web designers. It seems to me that it would further this goal if 
html attributes could be properly specified in the view html.


--~--~-~--~~~---~--~~
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: Bind problem

2009-08-13 Thread Naftoli Gugenheim

Which means that chaining binds is only useful when they operate on nodes that 
are side by side or are order outer first...
Thanks.

-
David Pollakfeeder.of.the.be...@gmail.com wrote:

On Thu, Aug 13, 2009 at 7:09 PM, Naftoli Gugenheim naftoli...@gmail.comwrote:


 Is this according to the specs?


Yes.  a:x fails binding and by default, it is returned.  There is no
nesting or recursion in the seeking of the nested elements.



 bind(x, x:ax:b //x:a, b - c)
 just returns the original NodeSeq untransformed.


 



-- 
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: Bind problem

2009-08-13 Thread Naftoli Gugenheim

Of the same prefix, that is...

-
Naftoli Gugenheimnaftoli...@gmail.com wrote:

Which means that chaining binds is only useful when they operate on nodes that 
are side by side or are order outer first...
Thanks.

-
David Pollakfeeder.of.the.be...@gmail.com wrote:

On Thu, Aug 13, 2009 at 7:09 PM, Naftoli Gugenheim naftoli...@gmail.comwrote:


 Is this according to the specs?


Yes.  a:x fails binding and by default, it is returned.  There is no
nesting or recursion in the seeking of the nested elements.



 bind(x, x:ax:b //x:a, b - c)
 just returns the original NodeSeq untransformed.


 



-- 
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: Attributes question

2009-08-13 Thread David Pollak
On Thu, Aug 13, 2009 at 7:24 PM, Naftoli Gugenheim naftoli...@gmail.comwrote:


 Why was the decision made, if I understand correctly, that normal
 attributes are not preserved in a bound node, and are are only available for
 the snippet's usage, and if you want the attribute to be sticky you have
 to prefix it with lift:? Wouldn't it be better the other way?


I don't understand your question.  Are you talking about Helpers.bind() or
are you talking about snippet dispatching?

Can you please provide an example of what happens now and what you would
expect to happen?



 One of lift's design goals is to help keep the static html in the view and
 the logic in the code, and to provide a templating system that doesn't
 interfere with visual web designers. It seems to me that it would further
 this goal if html attributes could be properly specified in the view html.


 



-- 
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: Attributes question

2009-08-13 Thread Naftoli Gugenheim

What I would like to do:
label for=nameName/labelnbsp;person:name I'd=name size=10 
class=special style=vertical-align: top maxlength=5 tabindex=1 /
Okay, just a little contrived...
My understanding is you can do this by prefixing the attribute with lift:; 
otherwise it will not be output but is available to the snippet code, i.e., 
without the prefix you are making an attribute available to the snippet but 
that's it.
I'm getting this from Exploring Lift page 115.



-
David Pollakfeeder.of.the.be...@gmail.com wrote:

On Thu, Aug 13, 2009 at 7:24 PM, Naftoli Gugenheim naftoli...@gmail.comwrote:


 Why was the decision made, if I understand correctly, that normal
 attributes are not preserved in a bound node, and are are only available for
 the snippet's usage, and if you want the attribute to be sticky you have
 to prefix it with lift:? Wouldn't it be better the other way?


I don't understand your question.  Are you talking about Helpers.bind() or
are you talking about snippet dispatching?

Can you please provide an example of what happens now and what you would
expect to happen?



 One of lift's design goals is to help keep the static html in the view and
 the logic in the code, and to provide a templating system that doesn't
 interfere with visual web designers. It seems to me that it would further
 this goal if html attributes could be properly specified in the view html.


 



-- 
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
-~--~~~~--~~--~--~---