[Lift] Re: Lift and interoperability

2009-05-14 Thread glenn



On May 11, 9:59 pm, Meredith Gregory  wrote:
> Glen,
>
> i've done some really hare-brained integrations -- like chaining the Lift
> filter with the Jersey filter -- and a bunch of other stuff. Between Lift's
> architecture and Scala's brilliant interop with Java, it's definitely my
> weapon of choice for integration projects.
>
> That said, i would really be interested to know what sort of integration
> you're having difficulty with -- even if it's only a gedanken experiment
> that seems to be problematic. Chances are, if you're running into a problem,
> we're likely to run into it, or already have. Either way, it would be
> beneficial for all to find a soln.
>
> Best wishes,
>
> --greg
>
> On Mon, May 11, 2009 at 3:45 PM, Timothy Perrett 
> wrote:
>
>
>
>
>
> > Could agree more with Alex - I too have done some pretty sophisticated
> > integrations with 3rd party systems and at every stage I found the
> > life-cycle hooks into lift very rich and completely empowering.
>
> > Cheers, Tim
>
> > On May 11, 11:31 pm, Alex Boisvert  wrote:
> > > Hi Glenn,
>
> > > I don't understand where you're coming from either...  I've integrated
> > Lift
> > > with a different persistence layer (home-grown), another authentication
> > > system (Tempo RBAC), integrated it with existing Java libraries and
> > Spring
> > > MVC components without trouble.  So far, I haven't run into a situation
> > > where Lift got in the way of integration.   The fact that Lift uses all
> > the
> > > standard servlet APIs made it easy to simply add it to an existing app
> > and
> > > even reuse session state / cookies from existing apps.
>
> > > I can see how Lift can be different from what you're used to, but I don't
> > > see how Lift gets in the way of integrating with legacy apps.
>
> > > My 2 cents...
>
> > > alex
>
> > > On Mon, May 11, 2009 at 1:06 PM, glenn  wrote:
>
> > > > Just some observations from a struggling lift user...
>
> > > > Yes, I see it's utility in delivering dynamic html to the browser. But
> > > > in today's world of rapidly evolving technologies for mashups and flex-
> > > > like richness and gadgetization, interoperability is the key to
> > > > adoption in the enterprise. It's not enough to say you can selectively
> > > > rewrite your legacy apps in lift. Lift, out of the box, is still
> > > > another technology for building monolithing web apps (war files). Not
> > > > the best stategy.
>
> > > > I find the keepers of the code, in response to numerous postings on
> > > > this site, suffer from NIH anxiety and easily dismiss interoperability
> > > > with other frameworks, either because they believe they have a
> > > > superior implementation, so why use someone else's, or, if you really
> > > > feel you need it, roll your own.
>
> > > > My response to that is, it just doesn't work that way. The best
> > > > technologies are not just agnostic on the issue of interoperability,
> > > > they embrace pluggability, and let the developer community choose the
> > > > winners and losers.
>
> > > > Lift suffers from not even having an out-of the-box declarative
> > > > configuration capability. And, frankly no, I don't have the time or
> > > > resources to write my own. Please, give me something other than just
> > > > an  tag to work with.
>
> --
> L.G. Meredith
> Managing Partner
> Biosimilarity LLC
> 1219 NW 83rd St
> Seattle, WA 98117
>
> +1 206.650.3740
>
> http://biosimilarity.blogspot.com

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



[Lift] Re: Lift and interoperability

2009-05-14 Thread glenn

I appreciate all the comments on lift and interoperability. What I'm
hearing
is that if an integration can be done in a plain old Java EE
application, it can be done
in lift. I never doubted that. It's just that I was hoping for a
little transparency when it
comes to resource management.

If I want to grab a resource outside the lift application context, do
I write plain html, Java EE code, lift code,
or a hybrid? I can use an action attribute on an html form to submit a
request to any URL,
but I can't do that in a lift form template.

Lift has api's to construct and process JSON and ATOM formats and even
has REST methods to process them,
but only if you plan on talking to yourself.

I think a lift implementation of something like Ryan Dewsbury's
JSONRequest class, in Google Web Toolkit Applications,
would help.

On May 11, 9:59 pm, Meredith Gregory  wrote:
> Glen,
>
> i've done some really hare-brained integrations -- like chaining the Lift
> filter with the Jersey filter -- and a bunch of other stuff. Between Lift's
> architecture and Scala's brilliant interop with Java, it's definitely my
> weapon of choice for integration projects.
>
> That said, i would really be interested to know what sort of integration
> you're having difficulty with -- even if it's only a gedanken experiment
> that seems to be problematic. Chances are, if you're running into a problem,
> we're likely to run into it, or already have. Either way, it would be
> beneficial for all to find a soln.
>
> Best wishes,
>
> --greg
>
> On Mon, May 11, 2009 at 3:45 PM, Timothy Perrett 
> wrote:
>
>
>
>
>
> > Could agree more with Alex - I too have done some pretty sophisticated
> > integrations with 3rd party systems and at every stage I found the
> > life-cycle hooks into lift very rich and completely empowering.
>
> > Cheers, Tim
>
> > On May 11, 11:31 pm, Alex Boisvert  wrote:
> > > Hi Glenn,
>
> > > I don't understand where you're coming from either...  I've integrated
> > Lift
> > > with a different persistence layer (home-grown), another authentication
> > > system (Tempo RBAC), integrated it with existing Java libraries and
> > Spring
> > > MVC components without trouble.  So far, I haven't run into a situation
> > > where Lift got in the way of integration.   The fact that Lift uses all
> > the
> > > standard servlet APIs made it easy to simply add it to an existing app
> > and
> > > even reuse session state / cookies from existing apps.
>
> > > I can see how Lift can be different from what you're used to, but I don't
> > > see how Lift gets in the way of integrating with legacy apps.
>
> > > My 2 cents...
>
> > > alex
>
> > > On Mon, May 11, 2009 at 1:06 PM, glenn  wrote:
>
> > > > Just some observations from a struggling lift user...
>
> > > > Yes, I see it's utility in delivering dynamic html to the browser. But
> > > > in today's world of rapidly evolving technologies for mashups and flex-
> > > > like richness and gadgetization, interoperability is the key to
> > > > adoption in the enterprise. It's not enough to say you can selectively
> > > > rewrite your legacy apps in lift. Lift, out of the box, is still
> > > > another technology for building monolithing web apps (war files). Not
> > > > the best stategy.
>
> > > > I find the keepers of the code, in response to numerous postings on
> > > > this site, suffer from NIH anxiety and easily dismiss interoperability
> > > > with other frameworks, either because they believe they have a
> > > > superior implementation, so why use someone else's, or, if you really
> > > > feel you need it, roll your own.
>
> > > > My response to that is, it just doesn't work that way. The best
> > > > technologies are not just agnostic on the issue of interoperability,
> > > > they embrace pluggability, and let the developer community choose the
> > > > winners and losers.
>
> > > > Lift suffers from not even having an out-of the-box declarative
> > > > configuration capability. And, frankly no, I don't have the time or
> > > > resources to write my own. Please, give me something other than just
> > > > an  tag to work with.
>
> --
> 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] how to display all template with chooseTemplate

2009-05-14 Thread pravin

Hi ,
I am using chooseTemplate in UI.

As per condition i am able to hide and display particular template but
suppose i want to display all templates at one condition ,how can i do
that.

e.g  suppose from count game example

case "run" if lastGuess == number =>
xhtml => win(chooseTemplate("choose", "win", xhtml))

case "run"  =>
xhtml => nextGuess(chooseTemplate("choose", "guess", xhtml))

 In this ,it displays one template(win or guess) at time ,
 but i want to display both template at time for particular condition.
 how can i do this?

Thanks in advance

--~--~-~--~~~---~--~~
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 display all template with chooseTemplate

2009-05-14 Thread Timothy Perrett

Can you post some code - I know what you want to do but without seeing
exactly what you have already its difficult to advise on the best
route.

Cheers, Tim

On May 14, 6:42 am, pravin  wrote:
> Hi ,
> I am using chooseTemplate in UI.
>
> As per condition i am able to hide and display particular template but
> suppose i want to display all templates at one condition ,how can i do
> that.
>
> e.g  suppose from count game example
>
>     case "run" if lastGuess == number =>
>     xhtml => win(chooseTemplate("choose", "win", xhtml))
>
>     case "run"  =>
>     xhtml => nextGuess(chooseTemplate("choose", "guess", xhtml))
>
>  In this ,it displays one template(win or guess) at time ,
>  but i want to display both template at time for particular condition.
>  how can i do this?
>
> Thanks in advance
--~--~-~--~~~---~--~~
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: OSGi support for Lift

2009-05-14 Thread Heiko Seeberger
Hi Alex,


> Yes, I do get that and these are exactly the things I'm looking for in
> moving to OSGi.  However, as applications grow I think it's eventually
> necessary to modularize and isolate them so that changing something in one
> app doesn't affect another one.
>

Yes, you are right. But so far OSGi does not support the concept of an
application.


> Let's say I have 2 apps and I'd like one of them to run on Lift 1.0 and the
> other one on Lift 1.1-SNAPSHOT, how do you see this working?  In a typical
> J2EE webapp, these would be deployed as separate wars, each having a
> separate web context and isolated Lift core instances.
>

Two separate WARs means two separate applications which is not possible in
OSGi so far. We could try to tweak this, e.g. by using non-overlapping
version ranges on package imports. But currently Lift needs (evil)
DynamicImport-Package to properly resolve classes (e.g. Snippets) which
breaks version-based resolving. And there would be other issues, too.

This whole application and isolation stuff is currently investigated by the
OSGi EEG (enterprise experts group): Hopefully we will soon see a solution!

Heiko

--~--~-~--~~~---~--~~
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: using Lift templates stand alone inside other frameworks like JAXRS?

2009-05-14 Thread James Strachan

2009/5/13 David Pollak :
> Please see:
>
> S.render(NodeSeq, HttpServletRequest): NodeSeq

Awesome - huge thanks! :)

I was just about to post a patch I'd figured out to implement this in
a way less elegant way; you saved me the trouble :)

I've managed to use this API to provide a basic integration of Lift
templates and Jersey
http://github.com/jstrachan/liftweb/tree/master/lift-jersey

I'm still working on it to provide some better examples (and
navigation isn't quite working yet), but so far its working pretty
well!

-- 
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: how to hide /display div tag in lift

2009-05-14 Thread pravin

can i get source code of that example(tamplate for  )?

On May 13, 4:22 am, David Pollak 
wrote:
> Please see some example code that I just put live 
> athttp://demo.liftweb.net/templating/selectomatic
>
> It will allow you to select which  tags are displayed based on value of
> a bunch of Booleans
>
>
>
> On Thu, May 7, 2009 at 2:55 AM, pravin  wrote:
>
> > Hi,
> > If there are more than 10 div tags on page ,So how can we display or
> > hide them with chooseTemplate technique.
> > boz chooseTemplate  method chose one tag at time
> > e.g
> >    val dispatch: DispatchIt = {
> >    case "run" if lastGuess == number =>
> >    xhtml => win(chooseTemplate("choose", "win", xhtml))
>
> >    case "run"  =>
> >    xhtml => nextGuess(chooseTemplate("choose", "guess", xhtml))
>
> >    case "count_down" =>
> >    xhtml => countDown(attr("from").map(Helpers.toInt).openOr(0))
> >  }
>
> > this code is from site /examples (Number guess example)
>
> > can we chose multiple templates at a time so ,we can display no of div
> > tag ?
> > or is there any other way to do this?
>
> > Thanks in advace
>
> > On May 4, 7:33 pm, "marius d."  wrote:
> > > There are so many ways ...
>
> > > 1. Use chooseTemplate technique. I think the examples application
> > > from /sites uses this.
> > > 2. In the snippet you have the snippet content and you can just strip
> > > it out
> > > 3. You can have a little JavaScript that is called when the page loads
> > > that shows or hides the div ... if you need something more dynamic.
>
> > > Br's,
> > > Marius
>
> > > On May 4, 1:28 pm, pravin  wrote:
>
> > > > HI,
>
> > > > I want to hide /display div tag.
> > > > how can i controlled it from my snippet?
> > > > my div tag contain table tag.
>
> > > > Thanks
>
> --
> 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] Jetty Session problem

2009-05-14 Thread sailormoo...@gmail.com

Hi :

  The Jetty server just happened a weird bug, some ppl seems to get
into another ppl's session,
as a logined user but it's another one's. I don't know why this would
happen, anyone knows if there is a bug,
or maybe some configuration should be made? 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: Menu access control not working as expected

2009-05-14 Thread glenn

David,

Your sample app works. Mine doesn't. I even put your sample Menu item
in
my app, but in it's own LocGroup, and it does not work. It seems the
only
difference is that I'm separating my menus into groups. Could that be
the
culprit?

Glenn...

On May 13, 9:27 pm, David Pollak 
wrote:
> Glenn,
> Sorry... there was a bug in the code.  I've fixed it.  It'll be available
> when this build finishes:http://hudson.scala-tools.org/job/Lift/949/console
>
> Please remember to do an mvn -U clean install
>
> I'm enclosing the sample app that I used to test.  Please note that you
> should only return Full(LiftResponse) if you want to redirect... not if you
> want to stay on the page.
>
> Thanks,
>
> David
>
>
>
> On Wed, May 13, 2009 at 8:51 PM, glenn  wrote:
>
> > David,
>
> > Moving CRUDify to the object fixed the compiler error. However, back
> > on the original menu issue, using TestAccess, as you suggest, still
> > did not work as expected. The menu item doesn't display. Maybe I'm
> > missing something important. Sorry to be a bother, but hope you can
> > help.
>
> > Here's my menu code:
>
> > def logged:Box[LiftResponse] = if(User.loggedIn_?){
> >    Full(RedirectResponse("/Login"))
> >    }else{
> >      Full(PlainTextResponse("No such location"))
> >    }
>
> >  val testLogin = TestAccess(() => logged)
>
> >  override def deleteMenuLoc = Empty
> >  override def createMenuLoc: Box[Menu] =
> >     Full(Menu(Loc("Create "+Prefix, createPath, "Continue...",
> >                   locSnippets, LocGroup("company"), testLogin,
> >                   Loc.Template(createTemplate
>
> > On May 13, 4:03 pm, David Pollak 
> > wrote:
> > > On Wed, May 13, 2009 at 3:30 PM, glenn  wrote:
>
> > > > Thanks for the heads-up on the 1.1-SNAPSHOT version, but now, when I
> > > > compile,
> > > > I get errors. I don't think this has anything to do with menu
> > > > redirection, but, I have
> > > > a Company class defined like so:
>
> > > CRUDify should be mixed into the Meta object not into th instance class.
> >  In
> > > this case, move CRUDify to object Company.
>
> > > This was the original intent with CRUDify, but I did not put the proper
> > > constraints on it in 1.0... I fixed that up in 1.1.
>
> > > > class Company extends LongKeyedMapper[Company] with Address[Company]
> > > > with IdPK with CRUDify[Long,Company] {
> > > >  ...
>
> > > > }
>
> > > > And, this is what my compiler output tells me:
>
> > > > illegal inheritance; self-type com.exmbly.scala.apbul.model.Company
> > > > does not conform to net.liftweb.mapper.CRUDify
> > > > [Long,com.exmbly.scala.apbul.model.Company]'s
> > > >  selftype net.liftweb.mapper.CRUDify
> > > > [Long,com.exmbly.scala.apbul.model.Company] with
> > > > com.exmbly.scala.apbul.model.Company with
> > > >  net.liftweb.mapper.KeyedMetaMapper
> > > > [Long,com.exmbly.scala.apbul.model.Company]
>
> > > > Was something changed in the definition of Crudify? What do I need to
> > > > change in my code? The error is a bit confusing.
>
> > > > Glenn...
>
> > > > On May 13, 2:58 pm, David Pollak 
> > > > wrote:
> > > > > On Wed, May 13, 2009 at 2:19 PM, glenn  wrote:
>
> > > > > > David,
>
> > > > > > Pardon my ignorance, but I see a Test case class in the Lift 1.0
> > api
> > > > > > for Loc, but not TestAccess, which seems similar.
>
> > > > > I added TestAccess to 1.1-SNAPSHOT last night.
>
> > > > > It's possible to write something in 1.0, but it's a lot harder...
> > > > basically,
> > > > > you have to write a Snippet and do a custom LocParam.
>
> > > > > Most of us are on 1.1-SNAPSHOT and the sites I deploy are on
> > 1.1-SNAPSHOT
> > > > > and there hasn't been an instability due to working on trunk-head
> > that
> > > > I've
> > > > > seen.
>
> > > > > > Glenn...
>
> > > > > > On May 13, 6:58 am, David Pollak 
> > > > > > wrote:
> > > > > > > Glenn,
>
> > > > > > > I've added another Loc param:
>
> > > > > > >   /**
> > > > > > >    * Allows extra access testing for a given menu location such
> > that
> > > > > > >    * you can build a menu that is displayed but redirects the
> > user to
> > > > a
> > > > > > > login
> > > > > > >    * page if they are not logged in
> > > > > > >    */
> > > > > > >   case class TestAccess(func: () => Box[LiftResponse]) extends
> > > > LocParam
>
> > > > > > > This will let you write a function that tests access for the page
> > and
> > > > > > return
> > > > > > > a RedirectResponse if the user needs to log in.  It will not
> > impact
> > > > the
> > > > > > > display of the menu item.
>
> > > > > > > Hope this helps.
>
> > > > > > > Thanks,
>
> > > > > > > David
>
> > > > > > > On Tue, May 12, 2009 at 5:23 PM, glenn  wrote:
>
> > > > > > > > Hmm,
>
> > > > > > > > Here's my complete menu list for this LocGroup:
>
> > > > > > > >  def quoteMenu:List[Menu] = {
> > > > > > > >      val groupquote = Menu(Loc("groupquote", List("quote",
> > > > "group"),
> > > > > > > > "Group Quote", LocGroup("quote"), loggedIn ))
> > > > > > > >      val businessquote = 

[Lift] Maven, Lift and Eclipse problem

2009-05-14 Thread glenn

I'm having trouble with continuous build in Eclipse, using maven to
build and run. This was not happening a few days ago, but suddenly, I
can no longer edit a scala file and simply refresh the browser to test
with jetty running. Now, after Eclipse compiles, I get the following
error in my Console:

Caused by: java.sql.SQLException: Failed to start database
'lift_example', see the next exception for details.
at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException
(Unknown Source)
at
org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA
(Unknown Source)
... 52 more
Caused by: java.sql.SQLException: Another instance of Derby may have
already booted the database C:\Users\Glenn\usr\local\develop\ws\myscala
\apgarBullardWeb\lift_example.

I have to stop jetty and restart just to test. Funny thing, I was able
to do continuous build and test before, and I can't think of anything
I've changed in my system to cause this.

Anone having a similar problem?


--~--~-~--~~~---~--~~
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: Jetty Session problem

2009-05-14 Thread Timothy Perrett

I've never seen this before, ever. Can you describe how your system
works etc?

Cheers, Tim

On May 14, 12:42 pm, "sailormoo...@gmail.com" 
wrote:
> Hi :
>
>   The Jetty server just happened a weird bug, some ppl seems to get
> into another ppl's session,
> as a logined user but it's another one's. I don't know why this would
> happen, anyone knows if there is a bug,
> or maybe some configuration should be made? 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] Fwd: New basketball court(s) near you: 'Mosswood Park'...

2009-05-14 Thread David Pollak
Folks,

Just a reminder about nofouls.com... a Lift powered site.

Thanks,

David

-- Forwarded message --
From: Nofouls 
Date: Wed, May 13, 2009 at 7:41 PM
Subject: New basketball court(s) near you: 'Mosswood Park'...
To: feeder.of.the.be...@gmail.com


The following court(s) have been added to Nofouls:

'Mosswood Park' - http://nofouls.com/court/2717

Remember, your login is: feeder.of.the.be...@gmail.com

---
Want to control what emails you receive? Go to:
http://nofouls.com/user/me



-- 
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: Jetty Session problem

2009-05-14 Thread David Pollak
On Thu, May 14, 2009 at 4:42 AM, sailormoo...@gmail.com <
sailormoo...@gmail.com> wrote:

>
> Hi :
>
>  The Jetty server just happened a weird bug, some ppl seems to get
> into another ppl's session,


All session state in Lift is managed using JSESSIONID.  Session management
is a simple and solid mechanism.  I've never seen or heard of mixing
sessions.

Can you be specific about the defect and the code in your application where
it's manifesting itself?


>
> as a logined user but it's another one's. I don't know why this would
> happen, anyone knows if there is a bug,
> or maybe some configuration should be made? Thanks.
>
> >
>


-- 
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 hide /display div tag in lift

2009-05-14 Thread David Pollak
On Thu, May 14, 2009 at 3:29 AM, pravin  wrote:

>
> can i get source code of that example(tamplate for  )?


Beyond the source code that exists on the page, you can get the source code
for all of demo.liftweb.net from
http://github.com/dpp/liftweb/tree/master/sites/example


>
>
> On May 13, 4:22 am, David Pollak 
> wrote:
> > Please see some example code that I just put live athttp://
> demo.liftweb.net/templating/selectomatic
> >
> > It will allow you to select which  tags are displayed based on value
> of
> > a bunch of Booleans
> >
> >
> >
> > On Thu, May 7, 2009 at 2:55 AM, pravin  wrote:
> >
> > > Hi,
> > > If there are more than 10 div tags on page ,So how can we display or
> > > hide them with chooseTemplate technique.
> > > boz chooseTemplate  method chose one tag at time
> > > e.g
> > >val dispatch: DispatchIt = {
> > >case "run" if lastGuess == number =>
> > >xhtml => win(chooseTemplate("choose", "win", xhtml))
> >
> > >case "run"  =>
> > >xhtml => nextGuess(chooseTemplate("choose", "guess", xhtml))
> >
> > >case "count_down" =>
> > >xhtml => countDown(attr("from").map(Helpers.toInt).openOr(0))
> > >  }
> >
> > > this code is from site /examples (Number guess example)
> >
> > > can we chose multiple templates at a time so ,we can display no of div
> > > tag ?
> > > or is there any other way to do this?
> >
> > > Thanks in advace
> >
> > > On May 4, 7:33 pm, "marius d."  wrote:
> > > > There are so many ways ...
> >
> > > > 1. Use chooseTemplate technique. I think the examples application
> > > > from /sites uses this.
> > > > 2. In the snippet you have the snippet content and you can just strip
> > > > it out
> > > > 3. You can have a little JavaScript that is called when the page
> loads
> > > > that shows or hides the div ... if you need something more dynamic.
> >
> > > > Br's,
> > > > Marius
> >
> > > > On May 4, 1:28 pm, pravin  wrote:
> >
> > > > > HI,
> >
> > > > > I want to hide /display div tag.
> > > > > how can i controlled it from my snippet?
> > > > > my div tag contain table tag.
> >
> > > > > Thanks
> >
> > --
> > 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: using Lift templates stand alone inside other frameworks like JAXRS?

2009-05-14 Thread David Pollak
On Thu, May 14, 2009 at 12:55 AM, James Strachan
wrote:

>
> 2009/5/13 David Pollak :
> > Please see:
> >
> > S.render(NodeSeq, HttpServletRequest): NodeSeq
>
> Awesome - huge thanks! :)
>
> I was just about to post a patch I'd figured out to implement this in
> a way less elegant way; you saved me the trouble :)
>
> I've managed to use this API to provide a basic integration of Lift
> templates and Jersey
> http://github.com/jstrachan/liftweb/tree/master/lift-jersey
>
> I'm still working on it to provide some better examples (and
> navigation isn't quite working yet), but so far its working pretty
> well!


Cool.  Are you involved with Dan Kulp in your JAXRS work?

>
>
> --
> 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: Fwd: New basketball court(s) near you: 'Mosswood Park'...

2009-05-14 Thread Warren Henning

Very nice. The web is built off websites that do one thing well.

Why do people have to register to search by zip code?

Warren

On Thu, May 14, 2009 at 8:40 AM, David Pollak
 wrote:
> Folks,
>
> Just a reminder about nofouls.com... a Lift powered site.
>
> Thanks,
>
> David

--~--~-~--~~~---~--~~
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 display all template with chooseTemplate

2009-05-14 Thread David Pollak
Pravin,

There's nothing magic going on with chooseTemplate or any of the other Lift
Snippet code.

The snippets take in a NodeSeq (a bunch of XML) and return a NodeSeq (a
bunch of XML).

XML is represented as NodeSeq which is a Seq[Node].  Seq[_] is the generic
Scala representation for a linear collection of stuff, so all Scala
collection operations (map, flatMap, filter, etc.) and works with Scala's
for comprehension.

The answers to your various questions are roots in manipulating XML which is
basically Scala's collection manipulation.  So, please spend some time
learning about this basic Scala feature.  We'll be glad to help you through
the concepts, but I'm not sure answering small variants on "how do I
transform X to Y" is going to give you the help you need.

Thanks,

David

On Wed, May 13, 2009 at 10:42 PM, pravin  wrote:

>
> Hi ,
> I am using chooseTemplate in UI.
>
> As per condition i am able to hide and display particular template but
> suppose i want to display all templates at one condition ,how can i do
> that.
>
> e.g  suppose from count game example
>
>case "run" if lastGuess == number =>
>xhtml => win(chooseTemplate("choose", "win", xhtml))
>
>case "run"  =>
>xhtml => nextGuess(chooseTemplate("choose", "guess", xhtml))
>
>  In this ,it displays one template(win or guess) at time ,
>  but i want to display both template at time for particular condition.
>  how can i do this?
>
> Thanks in advance
>
> >
>


-- 
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: Jetty Session problem

2009-05-14 Thread Viktor Klang
I've seen this happen to other session based java web frameworks,  
oftentimes it's been caused by improperly configured proxies or  
terminal servers.

Does this help you?

Viktor,
Rogue Software Architect

14 maj 2009 kl. 17.43 David Pollak   
skrev:

>
>
> On Thu, May 14, 2009 at 4:42 AM, sailormoo...@gmail.com 
>  > wrote:
>
> Hi :
>
>  The Jetty server just happened a weird bug, some ppl seems to get
> into another ppl's session,
>
> All session state in Lift is managed using JSESSIONID.  Session  
> management is a simple and solid mechanism.  I've never seen or  
> heard of mixing sessions.
>
> Can you be specific about the defect and the code in your  
> application where it's manifesting itself?
>
>
> as a logined user but it's another one's. I don't know why this would
> happen, anyone knows if there is a bug,
> or maybe some configuration should be made? Thanks.
>
>
>
>
>
> -- 
> 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] rlambda lift project updated

2009-05-14 Thread Meredith Gregory
Lifted,

i've added support to the rlambda lift
projecttaking it within range of
being a candidate DSL-archetype. At this point it
is possible simply to supply a .cf file in the src/main/bnfc directory and
it will generate everything from that. i've still got to conditionally
include the Eval and Compile functionality for DSL that have/don't have this
capability.

i've two remaining questions for this leg of the work.

   - Does anyone know how to reference maven dependencies within some flavor
   of maven-antrun-plugin? The original version does not appear to have this
   functionality and Sun's maven-antrun-extended-plugin (which is supposed to
   supply this functionality) has so little documentation (that i could find)
   that i couldn't get it to work after an hour our so.
   - This version requires that BNFC, as an executable, be available on the
   path. Is there a blessed way to handle this sort of dependency?
  - i've got a hare-brained scheme that will fix this -- a
  meta-compiler-compiler from BNFC's input format to ANTLR's. i
could include
  such a transform as a part of the project or a dependency and
test for the
  availability of BNFC and fall back to ANTLR if it's not available.

If anybody wanted to give this round of updates a whirl, even give me a code
review, i would be very grateful.

Best wishes,

--greg

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

+1 206.650.3740

http://biosimilarity.blogspot.com

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



[Lift] Re: Lift and interoperability

2009-05-14 Thread Meredith Gregory
Glenn,

i'm not sure i've understood your concern. Are you saying that

   - web requests -> lift are easy, but
   - lift -> other services (web or otherwise) are hard?

The latter direction is remarkably easy. Lift rests on top of Scala, Scala
seamlessly interops with Java. So, anything you can do in Java you can do in
Scala and therefore in Lift. Again, i may have misunderstood, but if there's
a class or jar in GWT that you like, you can pretty much just use it (modulo
hassles associated with dragging in its dependencies).

You might want to look at DPP's longtime lift example where he puts together
a comet-based actor framework in which you can handle potentially
long-latency requests to some remote service -- using whatever transport +
message formatting packaging you want (for which there are tons and tons of
Java implementations that you can use out of the box).

If you want some higher-level function or interaction method, maybe you
could restate your concern. i think i'm still not getting it.

Best wishes,

--greg

On Wed, May 13, 2009 at 10:39 PM, glenn  wrote:

>
> I appreciate all the comments on lift and interoperability. What I'm
> hearing
> is that if an integration can be done in a plain old Java EE
> application, it can be done
> in lift. I never doubted that. It's just that I was hoping for a
> little transparency when it
> comes to resource management.
>
> If I want to grab a resource outside the lift application context, do
> I write plain html, Java EE code, lift code,
> or a hybrid? I can use an action attribute on an html form to submit a
> request to any URL,
> but I can't do that in a lift form template.
>
> Lift has api's to construct and process JSON and ATOM formats and even
> has REST methods to process them,
> but only if you plan on talking to yourself.
>
> I think a lift implementation of something like Ryan Dewsbury's
> JSONRequest class, in Google Web Toolkit Applications,
> would help.
>
> On May 11, 9:59 pm, Meredith Gregory  wrote:
> > Glen,
> >
> > i've done some really hare-brained integrations -- like chaining the Lift
> > filter with the Jersey filter -- and a bunch of other stuff. Between
> Lift's
> > architecture and Scala's brilliant interop with Java, it's definitely my
> > weapon of choice for integration projects.
> >
> > That said, i would really be interested to know what sort of integration
> > you're having difficulty with -- even if it's only a gedanken experiment
> > that seems to be problematic. Chances are, if you're running into a
> problem,
> > we're likely to run into it, or already have. Either way, it would be
> > beneficial for all to find a soln.
> >
> > Best wishes,
> >
> > --greg
> >
> > On Mon, May 11, 2009 at 3:45 PM, Timothy Perrett  >wrote:
> >
> >
> >
> >
> >
> > > Could agree more with Alex - I too have done some pretty sophisticated
> > > integrations with 3rd party systems and at every stage I found the
> > > life-cycle hooks into lift very rich and completely empowering.
> >
> > > Cheers, Tim
> >
> > > On May 11, 11:31 pm, Alex Boisvert  wrote:
> > > > Hi Glenn,
> >
> > > > I don't understand where you're coming from either...  I've
> integrated
> > > Lift
> > > > with a different persistence layer (home-grown), another
> authentication
> > > > system (Tempo RBAC), integrated it with existing Java libraries and
> > > Spring
> > > > MVC components without trouble.  So far, I haven't run into a
> situation
> > > > where Lift got in the way of integration.   The fact that Lift uses
> all
> > > the
> > > > standard servlet APIs made it easy to simply add it to an existing
> app
> > > and
> > > > even reuse session state / cookies from existing apps.
> >
> > > > I can see how Lift can be different from what you're used to, but I
> don't
> > > > see how Lift gets in the way of integrating with legacy apps.
> >
> > > > My 2 cents...
> >
> > > > alex
> >
> > > > On Mon, May 11, 2009 at 1:06 PM, glenn  wrote:
> >
> > > > > Just some observations from a struggling lift user...
> >
> > > > > Yes, I see it's utility in delivering dynamic html to the browser.
> But
> > > > > in today's world of rapidly evolving technologies for mashups and
> flex-
> > > > > like richness and gadgetization, interoperability is the key to
> > > > > adoption in the enterprise. It's not enough to say you can
> selectively
> > > > > rewrite your legacy apps in lift. Lift, out of the box, is still
> > > > > another technology for building monolithing web apps (war files).
> Not
> > > > > the best stategy.
> >
> > > > > I find the keepers of the code, in response to numerous postings on
> > > > > this site, suffer from NIH anxiety and easily dismiss
> interoperability
> > > > > with other frameworks, either because they believe they have a
> > > > > superior implementation, so why use someone else's, or, if you
> really
> > > > > feel you need it, roll your own.
> >
> > > > > My response to that is, it just doesn't work that way. The best
> > > > > technologies are not ju

[Lift] Re: Jetty Session problem

2009-05-14 Thread marius d.

Are you trying to use different sessions of the same app in different
browser tabs?

Br's,
Marius

On May 14, 2:42 pm, "sailormoo...@gmail.com" 
wrote:
> Hi :
>
>   The Jetty server just happened a weird bug, some ppl seems to get
> into another ppl's session,
> as a logined user but it's another one's. I don't know why this would
> happen, anyone knows if there is a bug,
> or maybe some configuration should be made? 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: Lift and interoperability

2009-05-14 Thread marius d.

If you think that Lift does not provide enough support for what you
are trying to do please be more specific otherwise you are risking to
not be taken seriously and that would be a shame ...

On May 14, 8:39 am, glenn  wrote:
> I appreciate all the comments on lift and interoperability. What I'm
> hearing
> is that if an integration can be done in a plain old Java EE
> application, it can be done
> in lift. I never doubted that. It's just that I was hoping for a
> little transparency when it
> comes to resource management.
>
> If I want to grab a resource outside the lift application context, do
> I write plain html, Java EE code, lift code,
> or a hybrid? I can use an action attribute on an html form to submit a
> request to any URL,
> but I can't do that in a lift form template.

What you mean you can't do that? ... If you want to subnit forms to
outside of the Lift app you can do that. You can even tell Lift what
request should not be processed by Lift but passed along to the filter
chain.

>
> Lift has api's to construct and process JSON and ATOM formats and even
> has REST methods to process them,
> but only if you plan on talking to yourself.

I don't think this is true. Please provide a concrete example of what
you can not do with Lift.

>
> I think a lift implementation of something like Ryan Dewsbury's
> JSONRequest class, in Google Web Toolkit Applications,
> would help.
>
> On May 11, 9:59 pm, Meredith Gregory  wrote:
>
> > Glen,
>
> > i've done some really hare-brained integrations -- like chaining the Lift
> > filter with the Jersey filter -- and a bunch of other stuff. Between Lift's
> > architecture and Scala's brilliant interop with Java, it's definitely my
> > weapon of choice for integration projects.
>
> > That said, i would really be interested to know what sort of integration
> > you're having difficulty with -- even if it's only a gedanken experiment
> > that seems to be problematic. Chances are, if you're running into a problem,
> > we're likely to run into it, or already have. Either way, it would be
> > beneficial for all to find a soln.
>
> > Best wishes,
>
> > --greg
>
> > On Mon, May 11, 2009 at 3:45 PM, Timothy Perrett 
> > wrote:
>
> > > Could agree more with Alex - I too have done some pretty sophisticated
> > > integrations with 3rd party systems and at every stage I found the
> > > life-cycle hooks into lift very rich and completely empowering.
>
> > > Cheers, Tim
>
> > > On May 11, 11:31 pm, Alex Boisvert  wrote:
> > > > Hi Glenn,
>
> > > > I don't understand where you're coming from either...  I've integrated
> > > Lift
> > > > with a different persistence layer (home-grown), another authentication
> > > > system (Tempo RBAC), integrated it with existing Java libraries and
> > > Spring
> > > > MVC components without trouble.  So far, I haven't run into a situation
> > > > where Lift got in the way of integration.   The fact that Lift uses all
> > > the
> > > > standard servlet APIs made it easy to simply add it to an existing app
> > > and
> > > > even reuse session state / cookies from existing apps.
>
> > > > I can see how Lift can be different from what you're used to, but I 
> > > > don't
> > > > see how Lift gets in the way of integrating with legacy apps.
>
> > > > My 2 cents...
>
> > > > alex
>
> > > > On Mon, May 11, 2009 at 1:06 PM, glenn  wrote:
>
> > > > > Just some observations from a struggling lift user...
>
> > > > > Yes, I see it's utility in delivering dynamic html to the browser. But
> > > > > in today's world of rapidly evolving technologies for mashups and 
> > > > > flex-
> > > > > like richness and gadgetization, interoperability is the key to
> > > > > adoption in the enterprise. It's not enough to say you can selectively
> > > > > rewrite your legacy apps in lift. Lift, out of the box, is still
> > > > > another technology for building monolithing web apps (war files). Not
> > > > > the best stategy.
>
> > > > > I find the keepers of the code, in response to numerous postings on
> > > > > this site, suffer from NIH anxiety and easily dismiss interoperability
> > > > > with other frameworks, either because they believe they have a
> > > > > superior implementation, so why use someone else's, or, if you really
> > > > > feel you need it, roll your own.
>
> > > > > My response to that is, it just doesn't work that way. The best
> > > > > technologies are not just agnostic on the issue of interoperability,
> > > > > they embrace pluggability, and let the developer community choose the
> > > > > winners and losers.
>
> > > > > Lift suffers from not even having an out-of the-box declarative
> > > > > configuration capability. And, frankly no, I don't have the time or
> > > > > resources to write my own. Please, give me something other than just
> > > > > an  tag to work with.
>
> > --
> > L.G. Meredith
> > Managing Partner
> > Biosimilarity LLC
> > 1219 NW 83rd St
> > Seattle, WA 98117
>
> > +1 206.650.3740
>
> >http://biosimilarity.blogspot.com
--~--~-

[Lift] Re: Lift and interoperability

2009-05-14 Thread David Pollak
Glenn,

On Wed, May 13, 2009 at 10:39 PM, glenn  wrote:

>
> I appreciate all the comments on lift and interoperability. What I'm
> hearing
> is that if an integration can be done in a plain old Java EE
> application, it can be done
> in lift. I never doubted that. It's just that I was hoping for a
> little transparency when it
> comes to resource management.


What resources are you looking to manage.  Your original post lacked
specifics as does this one.  What is it that you want to do that you cannot
(1) do with Lift or (2) do with some other JVM library because Lift is
getting in your way?


>
>
> If I want to grab a resource outside the lift application context, do
> I write plain html, Java EE code, lift code,
> or a hybrid?


What kind of resource do you want to "grab"?  A database?  An HTTP exposed
service?  In general, Lift is about servicing (responding to) HTTP requests,
not about making them.  There's nothing in Lift that I know of that impairs
your ability to use other libraries to access external services.  But, Lift
is primarily about servicing, not making, HTTP requests.


> I can use an action attribute on an html form to submit a
> request to any URL,
> but I can't do that in a lift form template.


This is just wrong.  First, there's no such thing as a "Lift form
template".  Lift's templating mechanism is a generic system for re-writing
XML documents.  There's no limit on how that re-writing can happen.  What
kind of re-writing do you want to do?  How do you want the XML to appear?
What kind of substitution do you want to make from a generic template into
what is rendered to the browser?

>
>
> Lift has api's to construct and process JSON and ATOM formats and even
> has REST methods to process them,
> but only if you plan on talking to yourself.


What does this mean?  What does "talking to yourself" mean?


>
>
> I think a lift implementation of something like Ryan Dewsbury's
> JSONRequest class,


This is a JavaScript class that operates on the client side (in the
browser).  There's nothing that bars you from using this class in your
Lift-based application.

If you are suggesting a Scala-based JSON request generator so that you can
make JSON requests on external services, there are plenty of Java-based
classes that do this and there's been no demand to writing a wrapper for one
of these in Scala and include it with Lift.  Once again, Lift is primarily
concerned with servicing HTTP requests, not making them.


> in Google Web Toolkit Applications,


GWT is a client-side technology, not a server-side technology.  You can use
GWT-based clients as front ends to Lift-based applications.

As Marius said, be specific about what you want and why (you've seen the
kind of support you've been getting related to the menu items... find me
another framework team that adds features with a day or two turn-around when
the feature is concrete).  Continuing to be non-specific or just plain wrong
is not helping your case.

David


>
> would help.
>
> On May 11, 9:59 pm, Meredith Gregory  wrote:
> > Glen,
> >
> > i've done some really hare-brained integrations -- like chaining the Lift
> > filter with the Jersey filter -- and a bunch of other stuff. Between
> Lift's
> > architecture and Scala's brilliant interop with Java, it's definitely my
> > weapon of choice for integration projects.
> >
> > That said, i would really be interested to know what sort of integration
> > you're having difficulty with -- even if it's only a gedanken experiment
> > that seems to be problematic. Chances are, if you're running into a
> problem,
> > we're likely to run into it, or already have. Either way, it would be
> > beneficial for all to find a soln.
> >
> > Best wishes,
> >
> > --greg
> >
> > On Mon, May 11, 2009 at 3:45 PM, Timothy Perrett  >wrote:
> >
> >
> >
> >
> >
> > > Could agree more with Alex - I too have done some pretty sophisticated
> > > integrations with 3rd party systems and at every stage I found the
> > > life-cycle hooks into lift very rich and completely empowering.
> >
> > > Cheers, Tim
> >
> > > On May 11, 11:31 pm, Alex Boisvert  wrote:
> > > > Hi Glenn,
> >
> > > > I don't understand where you're coming from either...  I've
> integrated
> > > Lift
> > > > with a different persistence layer (home-grown), another
> authentication
> > > > system (Tempo RBAC), integrated it with existing Java libraries and
> > > Spring
> > > > MVC components without trouble.  So far, I haven't run into a
> situation
> > > > where Lift got in the way of integration.   The fact that Lift uses
> all
> > > the
> > > > standard servlet APIs made it easy to simply add it to an existing
> app
> > > and
> > > > even reuse session state / cookies from existing apps.
> >
> > > > I can see how Lift can be different from what you're used to, but I
> don't
> > > > see how Lift gets in the way of integrating with legacy apps.
> >
> > > > My 2 cents...
> >
> > > > alex
> >
> > > > On Mon, May 11, 2009 at 1:06 PM, glenn  wrote:
> >
> 

[Lift] Re: Lift and interoperability

2009-05-14 Thread glenn

I've been hammered on this matter and I accept the results and learned
some things in the process. In the end, what we end up with
is a Java EE web application, with all the good and all the baggage
that entails, and I rather like lift's templating strategy
and out-of-the-box persistence capability . I'm working on integrating
with an ATOM server and if I run into
some difficulties, I'll post them. Over and out.

On May 14, 1:45 pm, "marius d."  wrote:
> If you think that Lift does not provide enough support for what you
> are trying to do please be more specific otherwise you are risking to
> not be taken seriously and that would be a shame ...
>
> On May 14, 8:39 am, glenn  wrote:
>
> > I appreciate all the comments on lift and interoperability. What I'm
> > hearing
> > is that if an integration can be done in a plain old Java EE
> > application, it can be done
> > in lift. I never doubted that. It's just that I was hoping for a
> > little transparency when it
> > comes to resource management.
>
> > If I want to grab a resource outside the lift application context, do
> > I write plain html, Java EE code, lift code,
> > or a hybrid? I can use an action attribute on an html form to submit a
> > request to any URL,
> > but I can't do that in a lift form template.
>
> What you mean you can't do that? ... If you want to subnit forms to
> outside of the Lift app you can do that. You can even tell Lift what
> request should not be processed by Lift but passed along to the filter
> chain.
>
>
>
> > Lift has api's to construct and process JSON and ATOM formats and even
> > has REST methods to process them,
> > but only if you plan on talking to yourself.
>
> I don't think this is true. Please provide a concrete example of what
> you can not do with Lift.
>
>
>
> > I think a lift implementation of something like Ryan Dewsbury's
> > JSONRequest class, in Google Web Toolkit Applications,
> > would help.
>
> > On May 11, 9:59 pm, Meredith Gregory  wrote:
>
> > > Glen,
>
> > > i've done some really hare-brained integrations -- like chaining the Lift
> > > filter with the Jersey filter -- and a bunch of other stuff. Between 
> > > Lift's
> > > architecture and Scala's brilliant interop with Java, it's definitely my
> > > weapon of choice for integration projects.
>
> > > That said, i would really be interested to know what sort of integration
> > > you're having difficulty with -- even if it's only a gedanken experiment
> > > that seems to be problematic. Chances are, if you're running into a 
> > > problem,
> > > we're likely to run into it, or already have. Either way, it would be
> > > beneficial for all to find a soln.
>
> > > Best wishes,
>
> > > --greg
>
> > > On Mon, May 11, 2009 at 3:45 PM, Timothy Perrett 
> > > wrote:
>
> > > > Could agree more with Alex - I too have done some pretty sophisticated
> > > > integrations with 3rd party systems and at every stage I found the
> > > > life-cycle hooks into lift very rich and completely empowering.
>
> > > > Cheers, Tim
>
> > > > On May 11, 11:31 pm, Alex Boisvert  wrote:
> > > > > Hi Glenn,
>
> > > > > I don't understand where you're coming from either...  I've integrated
> > > > Lift
> > > > > with a different persistence layer (home-grown), another 
> > > > > authentication
> > > > > system (Tempo RBAC), integrated it with existing Java libraries and
> > > > Spring
> > > > > MVC components without trouble.  So far, I haven't run into a 
> > > > > situation
> > > > > where Lift got in the way of integration.   The fact that Lift uses 
> > > > > all
> > > > the
> > > > > standard servlet APIs made it easy to simply add it to an existing app
> > > > and
> > > > > even reuse session state / cookies from existing apps.
>
> > > > > I can see how Lift can be different from what you're used to, but I 
> > > > > don't
> > > > > see how Lift gets in the way of integrating with legacy apps.
>
> > > > > My 2 cents...
>
> > > > > alex
>
> > > > > On Mon, May 11, 2009 at 1:06 PM, glenn  wrote:
>
> > > > > > Just some observations from a struggling lift user...
>
> > > > > > Yes, I see it's utility in delivering dynamic html to the browser. 
> > > > > > But
> > > > > > in today's world of rapidly evolving technologies for mashups and 
> > > > > > flex-
> > > > > > like richness and gadgetization, interoperability is the key to
> > > > > > adoption in the enterprise. It's not enough to say you can 
> > > > > > selectively
> > > > > > rewrite your legacy apps in lift. Lift, out of the box, is still
> > > > > > another technology for building monolithing web apps (war files). 
> > > > > > Not
> > > > > > the best stategy.
>
> > > > > > I find the keepers of the code, in response to numerous postings on
> > > > > > this site, suffer from NIH anxiety and easily dismiss 
> > > > > > interoperability
> > > > > > with other frameworks, either because they believe they have a
> > > > > > superior implementation, so why use someone else's, or, if you 
> > > > > > really
> > > > > > fee

[Lift] Re: Trouble with lift, GAE, JPA, adding child records

2009-05-14 Thread ngug

Your reply shed a lot of insight on the problem, but it's still not
solved.
There's no one (known) action or sequence that triggers errors, but
here is what I have so far.
1. When clicking Edit from the list I sometimes get in the console (no
stack trace):
May 14, 2009 6:38:54 PM
com.google.apphosting.utils.servlet.TransactionCleanupFi
lter handleAbandonedTxns
WARNING: Request completed without committing or rolling back
transaction with i
d 85.  Transaction will be rolled back.

2. When clicking save after opening a nature (without modifying it) or
possibly just clicking back to the list, I get in the browser (similar
if not identical in the console):

Exception occured while processing /natures/list
  Message: javax.jdo.JDOFatalUserException: Illegal
argument
NestedThrowables:
java.lang.IllegalArgumentException: can't operate on multiple entity
groups in a single transaction. found both Element {
  type: "Nature"
  id: 42
}
 and Element {
  type: "Nature"
  id: 47
}


org.datanucleus.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException
(NucleusJDOHelper.java:396)
org.datanucleus.state.JDOStateManagerImpl.isLoaded
(JDOStateManagerImpl.java:1879)
lrbcol.model.Nature.jdoGetname(Nature.scala)
lrbcol.model.Nature.name(Nature.scala:18)
lrbcol.model.Nature.toString(Nature.scala:24)
java.lang.String.valueOf(String.java:2827)
scala.StringBuilder.append(StringBuilder.scala:234)
liftgae1.snippet.Natures$$anonfun$list$2.apply(Natures.scala:34)
liftgae1.snippet.Natures$$anonfun$list$2.apply(Natures.scala:34)
[I deleted the rest. That's this line:
NatureLocationType.all foreach {l=>println(l + " for " +
l.nature)}
]


Caught and thrown by:
Message: java.lang.IllegalArgumentException: can't operate on multiple
entity groups in a single transaction. found both Element {
  type: "Nature"
  id: 42
}
 and Element {
  type: "Nature"
  id: 47
}

com.google.appengine.api.datastore.DatastoreApiHelper.translateError
(DatastoreApiHelper.java:28)
com.google.appengine.api.datastore.DatastoreApiHelper.makeSyncCall
(DatastoreApiHelper.java:55)
com.google.appengine.api.datastore.DatastoreServiceImpl$1.run
(DatastoreServiceImpl.java:109)
com.google.appengine.api.datastore.TransactionRunner.runInTransaction
(TransactionRunner.java:29)
com.google.appengine.api.datastore.DatastoreServiceImpl.get
(DatastoreServiceImpl.java:95)
com.google.appengine.api.datastore.DatastoreServiceImpl.get
(DatastoreServiceImpl.java:68)
com.google.appengine.api.datastore.DatastoreServiceImpl.get
(DatastoreServiceImpl.java:56)

org.datanucleus.store.appengine.RuntimeExceptionWrappingDatastoreService.get
(RuntimeExceptionWrappingDatastoreService.java:62)
org.datanucleus.store.appengine.DatastorePersistenceHandler.get
(DatastorePersistenceHandler.java:78)
org.datanucleus.store.appengine.DatastorePersistenceHandler.get
(DatastorePersistenceHandler.java:88)

org.datanucleus.store.appengine.DatastorePersistenceHandler.fetchObject
(DatastorePersistenceHandler.java:363)

org.datanucleus.state.JDOStateManagerImpl.loadUnloadedFieldsInFetchPlan
(JDOStateManagerImpl.java:1597)
org.datanucleus.state.JDOStateManagerImpl.isLoaded
(JDOStateManagerImpl.java:1862)
lrbcol.model.Nature.jdoGetname(Nature.scala)
lrbcol.model.Nature.name(Nature.scala:18)
lrbcol.model.Nature.toString(Nature.scala:24)
java.lang.String.valueOf(String.java:2827)
scala.StringBuilder.append(StringBuilder.scala:234)
liftgae1.snippet.Natures$$anonfun$list$2.apply(Natures.scala:34)
liftgae1.snippet.Natures$$anonfun$list$2.apply(Natures.scala:34)
[I deleted the rest]

--~--~-~--~~~---~--~~
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: Trouble with lift, GAE, JPA, adding child records

2009-05-14 Thread ngug

In any case, how would I handle transactions manually? An SHtml.hidden
before and after every form? It's confusing because SHtml lumps the
get and set side by side when they happen in two different requests
and the entity needs to be reloaded in between. In any case, GAE seems
to require tighter control of transactions because two entity groups
can't be modified (accessed?) in one transaction.

--~--~-~--~~~---~--~~
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: Trouble with lift, GAE, JPA, adding child records

2009-05-14 Thread ngug

In any case, how would I handle transactions manually? An SHtml.hidden
before and after every form? It's confusing because SHtml lumps the
get and set side by side when they happen in two different requests
and the entity needs to be reloaded in between. In any case, GAE seems
to require tighter control of transactions because two entity groups
can't be modified (accessed?) in one transaction.

--~--~-~--~~~---~--~~
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: Trouble with lift, GAE, JPA, adding child records

2009-05-14 Thread ngug

In any case, how would I handle transactions manually? An SHtml.hidden
before and after every form? It's confusing because SHtml lumps the
get and set side by side when they happen in two different requests
and the entity needs to be reloaded in between. In any case, GAE seems
to require tighter control of transactions because two entity groups
can't be modified (accessed?) in one transaction.

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



[Lift] Re: Lift and interoperability

2009-05-14 Thread Timothy Perrett

Glenn,

I read with interest your mail below - to clarify, you've not been  
"hammered" by anyone... The lift comunity is a welcoming one and at no  
point would any member of the commit team shout down someone else -  
that's just not the way we roll.

You expressed a viewpoint, and 4 seperate members of the team replied  
asking for various things to properly answer your mostly vauge  
question / comments. You chose to not answer these questions in a  
sucinct way which is why I suspect you feel "hammered" because people  
are just becoming a little frustrated with this thread... As a general  
rule, were really pleased when people come to the comunity and say  
something like "XYZ feature is whack, it should do ABC" - Lift simply  
wouldn't be what it is today if that didn't happen. However, coming on  
list and saying something like "lift is difficult to integrate" and  
provide no clarity or justification is, well, somewhat difficult and  
not overly helpfull - you won't get the answers you seek and everyone  
else just gets more email landing in there inbox :-)

If you have a genuine hurdle, post a message, with relevant details,  
and you'll get a prompt and informative reply from either a lift team  
member or one of the great folks from the comunity at large.

My suggestion to you: spend some time *really* getting to know lift,  
then perhaps re-visit this thread at a later date if you still feel  
the need to.

Cheers, Tim

Sent from my iPhone

On 14 May 2009, at 22:08, glenn  wrote:

>
> I've been hammered on this matter and I accept the results and learned
> some things in the process. In the end, what we end up with
> is a Java EE web application, with all the good and all the baggage
> that entails, and I rather like lift's templating strategy
> and out-of-the-box persistence capability . I'm working on integrating
> with an ATOM server and if I run into
> some difficulties, I'll post them. Over and out.
>
> On May 14, 1:45 pm, "marius d."  wrote:
>> If you think that Lift does not provide enough support for what you
>> are trying to do please be more specific otherwise you are risking to
>> not be taken seriously and that would be a shame ...
>>
>> On May 14, 8:39 am, glenn  wrote:
>>
>>> I appreciate all the comments on lift and interoperability. What I'm
>>> hearing
>>> is that if an integration can be done in a plain old Java EE
>>> application, it can be done
>>> in lift. I never doubted that. It's just that I was hoping for a
>>> little transparency when it
>>> comes to resource management.
>>
>>> If I want to grab a resource outside the lift application context,  
>>> do
>>> I write plain html, Java EE code, lift code,
>>> or a hybrid? I can use an action attribute on an html form to  
>>> submit a
>>> request to any URL,
>>> but I can't do that in a lift form template.
>>
>> What you mean you can't do that? ... If you want to subnit forms to
>> outside of the Lift app you can do that. You can even tell Lift what
>> request should not be processed by Lift but passed along to the  
>> filter
>> chain.
>>
>>
>>
>>> Lift has api's to construct and process JSON and ATOM formats and  
>>> even
>>> has REST methods to process them,
>>> but only if you plan on talking to yourself.

--~--~-~--~~~---~--~~
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 access control not working as expected

2009-05-14 Thread glenn

David,

I changed default html in your menu example a bit and the results were
similar to using LocGroup -
the menu item won't display.

here's the change:





Fake Out


  
  

  

It seems this only works if you stick to outputting the full menu in
your templates with .
Anything else and it's broken.

Glenn...

On May 14, 7:31 am, glenn  wrote:
> David,
>
> Your sample app works. Mine doesn't. I even put your sample Menu item
> in
> my app, but in it's own LocGroup, and it does not work. It seems the
> only
> difference is that I'm separating my menus into groups. Could that be
> the
> culprit?
>
> Glenn...
>
> On May 13, 9:27 pm, David Pollak 
> wrote:
>
> > Glenn,
> > Sorry... there was a bug in the code.  I've fixed it.  It'll be available
> > when this build finishes:http://hudson.scala-tools.org/job/Lift/949/console
>
> > Please remember to do an mvn -U clean install
>
> > I'm enclosing the sample app that I used to test.  Please note that you
> > should only return Full(LiftResponse) if you want to redirect... not if you
> > want to stay on the page.
>
> > Thanks,
>
> > David
>
> > On Wed, May 13, 2009 at 8:51 PM, glenn  wrote:
>
> > > David,
>
> > > Moving CRUDify to the object fixed the compiler error. However, back
> > > on the original menu issue, using TestAccess, as you suggest, still
> > > did not work as expected. The menu item doesn't display. Maybe I'm
> > > missing something important. Sorry to be a bother, but hope you can
> > > help.
>
> > > Here's my menu code:
>
> > > def logged:Box[LiftResponse] = if(User.loggedIn_?){
> > >    Full(RedirectResponse("/Login"))
> > >    }else{
> > >      Full(PlainTextResponse("No such location"))
> > >    }
>
> > >  val testLogin = TestAccess(() => logged)
>
> > >  override def deleteMenuLoc = Empty
> > >  override def createMenuLoc: Box[Menu] =
> > >     Full(Menu(Loc("Create "+Prefix, createPath, "Continue...",
> > >                   locSnippets, LocGroup("company"), testLogin,
> > >                   Loc.Template(createTemplate
>
> > > On May 13, 4:03 pm, David Pollak 
> > > wrote:
> > > > On Wed, May 13, 2009 at 3:30 PM, glenn  wrote:
>
> > > > > Thanks for the heads-up on the 1.1-SNAPSHOT version, but now, when I
> > > > > compile,
> > > > > I get errors. I don't think this has anything to do with menu
> > > > > redirection, but, I have
> > > > > a Company class defined like so:
>
> > > > CRUDify should be mixed into the Meta object not into th instance class.
> > >  In
> > > > this case, move CRUDify to object Company.
>
> > > > This was the original intent with CRUDify, but I did not put the proper
> > > > constraints on it in 1.0... I fixed that up in 1.1.
>
> > > > > class Company extends LongKeyedMapper[Company] with Address[Company]
> > > > > with IdPK with CRUDify[Long,Company] {
> > > > >  ...
>
> > > > > }
>
> > > > > And, this is what my compiler output tells me:
>
> > > > > illegal inheritance; self-type com.exmbly.scala.apbul.model.Company
> > > > > does not conform to net.liftweb.mapper.CRUDify
> > > > > [Long,com.exmbly.scala.apbul.model.Company]'s
> > > > >  selftype net.liftweb.mapper.CRUDify
> > > > > [Long,com.exmbly.scala.apbul.model.Company] with
> > > > > com.exmbly.scala.apbul.model.Company with
> > > > >  net.liftweb.mapper.KeyedMetaMapper
> > > > > [Long,com.exmbly.scala.apbul.model.Company]
>
> > > > > Was something changed in the definition of Crudify? What do I need to
> > > > > change in my code? The error is a bit confusing.
>
> > > > > Glenn...
>
> > > > > On May 13, 2:58 pm, David Pollak 
> > > > > wrote:
> > > > > > On Wed, May 13, 2009 at 2:19 PM, glenn  wrote:
>
> > > > > > > David,
>
> > > > > > > Pardon my ignorance, but I see a Test case class in the Lift 1.0
> > > api
> > > > > > > for Loc, but not TestAccess, which seems similar.
>
> > > > > > I added TestAccess to 1.1-SNAPSHOT last night.
>
> > > > > > It's possible to write something in 1.0, but it's a lot harder...
> > > > > basically,
> > > > > > you have to write a Snippet and do a custom LocParam.
>
> > > > > > Most of us are on 1.1-SNAPSHOT and the sites I deploy are on
> > > 1.1-SNAPSHOT
> > > > > > and there hasn't been an instability due to working on trunk-head
> > > that
> > > > > I've
> > > > > > seen.
>
> > > > > > > Glenn...
>
> > > > > > > On May 13, 6:58 am, David Pollak 
> > > > > > > wrote:
> > > > > > > > Glenn,
>
> > > > > > > > I've added another Loc param:
>
> > > > > > > >   /**
> > > > > > > >    * Allows extra access testing for a given menu location such
> > > that
> > > > > > > >    * you can build a menu that is displayed but redirects the
> > > user to
> > > > > a
> > > > > > > > login
> > > > > > > >    * page if they are not logged in
> > > > > > > >    */
> > > > > > > >   case class TestAccess(func: () => Box[LiftResponse]) extends
> > > > > LocParam
>
> > > > > > > > This will let you write a function that tests access for the 
> > > > >

[Lift] Re: Jetty Session problem

2009-05-14 Thread sailormoo...@gmail.com

Hi:

  It just happened once so I cannot tell exactly the reason.
  However from the logs it seems there is a wierd GET command with
jsession id,
  while most of the commands aren't.

  Proxy Server? Is it in my configuration ? Or just they use the same
proxy server??

  And may I ask if I can disable the jsession id in the GET command to
force them to use cookies?
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: immutable bindings

2009-05-14 Thread Oliver Lambert
I've started integrating my immutable bindings, but have some questions

On my build, I've placed the main immutable binding classes in module lift
webkit under package net.liftweb.http.immu.
Is that location/name OK?

I would like to introduce a new set of currency classes, roughly based on
Martin et al's Currency Zone example in their book. Derek, is using an
earlier version of it in his JPA example, Ive simplified it a little and
extended it to include a few different currencies. Is this OK? - I know
there is a simple currency class already.

I'm not sure what to do about the mixin binding that I use for html, that
extends/modifies BindHelpers.
Potentially I could modify BindHelpers, but, should I leave it out for now
or include it as an optional and separate class in net.liftweb.html.immu?

cheers
Oliver

--~--~-~--~~~---~--~~
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] Schedule for 1.1

2009-05-14 Thread Heiko Seeberger
Hi,
I am about to use Lift for a new project and I wonder whether I should use
1.0 or go for 1.1.
Any ideas when 1.1 will be released?
And what about the record framework? Is it "production ready" yet or in near
future?

Thanx
Heiko
-- 
My blog: heikoseeberger.name
Follow me: twitter.com/hseeberger
OSGi on Scala: www.scalamodules.org
Lift, the simply functional web framework: liftweb.net

--~--~-~--~~~---~--~~
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: Trouble with lift, GAE, JPA, adding child records

2009-05-14 Thread Derek Chen-Becker
I'm not sure how #1 could happen unless there's something bypassing Lift's
normal RequestVar handling. The RequestVar cleanup function explicitly
closes the EM, which would normally close the transaction. For the second
one, maybe that's a limitation of JDO. I've never seen that error before. In
any case, the LocalEMF class has a constructor that takes an optional
boolean that indicates whether you want to manage your own transactions. In
your case, change your code to

object EntityManager extends LocalEMF("transactions-optional", true) with
RequestVarEM

But then it's your responsibility to handle all transactions.

Derek

On Thu, May 14, 2009 at 4:55 PM, ngug  wrote:

>
> Your reply shed a lot of insight on the problem, but it's still not
> solved.
> There's no one (known) action or sequence that triggers errors, but
> here is what I have so far.
> 1. When clicking Edit from the list I sometimes get in the console (no
> stack trace):
> May 14, 2009 6:38:54 PM
> com.google.apphosting.utils.servlet.TransactionCleanupFi
> lter handleAbandonedTxns
> WARNING: Request completed without committing or rolling back
> transaction with i
> d 85.  Transaction will be rolled back.
>
> 2. When clicking save after opening a nature (without modifying it) or
> possibly just clicking back to the list, I get in the browser (similar
> if not identical in the console):
>
> Exception occured while processing /natures/list
>  Message: javax.jdo.JDOFatalUserException: Illegal
> argument
> NestedThrowables:
> java.lang.IllegalArgumentException: can't operate on multiple entity
> groups in a single transaction. found both Element {
>  type: "Nature"
>  id: 42
> }
>  and Element {
>  type: "Nature"
>  id: 47
> }
>
>
> org.datanucleus.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException
> (NucleusJDOHelper.java:396)
>org.datanucleus.state.JDOStateManagerImpl.isLoaded
> (JDOStateManagerImpl.java:1879)
>lrbcol.model.Nature.jdoGetname(Nature.scala)
>lrbcol.model.Nature.name(Nature.scala:18)
>lrbcol.model.Nature.toString(Nature.scala:24)
>java.lang.String.valueOf(String.java:2827)
>scala.StringBuilder.append(StringBuilder.scala:234)
>liftgae1.snippet.Natures$$anonfun$list$2.apply(Natures.scala:34)
>liftgae1.snippet.Natures$$anonfun$list$2.apply(Natures.scala:34)
> [I deleted the rest. That's this line:
> NatureLocationType.all foreach {l=>println(l + " for " +
> l.nature)}
> ]
>
>
> Caught and thrown by:
> Message: java.lang.IllegalArgumentException: can't operate on multiple
> entity groups in a single transaction. found both Element {
>  type: "Nature"
>  id: 42
> }
>  and Element {
>  type: "Nature"
>  id: 47
> }
>
>com.google.appengine.api.datastore.DatastoreApiHelper.translateError
> (DatastoreApiHelper.java:28)
>com.google.appengine.api.datastore.DatastoreApiHelper.makeSyncCall
> (DatastoreApiHelper.java:55)
>com.google.appengine.api.datastore.DatastoreServiceImpl$1.run
> (DatastoreServiceImpl.java:109)
>
>  com.google.appengine.api.datastore.TransactionRunner.runInTransaction
> (TransactionRunner.java:29)
>com.google.appengine.api.datastore.DatastoreServiceImpl.get
> (DatastoreServiceImpl.java:95)
>com.google.appengine.api.datastore.DatastoreServiceImpl.get
> (DatastoreServiceImpl.java:68)
>com.google.appengine.api.datastore.DatastoreServiceImpl.get
> (DatastoreServiceImpl.java:56)
>
>
> org.datanucleus.store.appengine.RuntimeExceptionWrappingDatastoreService.get
> (RuntimeExceptionWrappingDatastoreService.java:62)
>org.datanucleus.store.appengine.DatastorePersistenceHandler.get
> (DatastorePersistenceHandler.java:78)
>org.datanucleus.store.appengine.DatastorePersistenceHandler.get
> (DatastorePersistenceHandler.java:88)
>
> org.datanucleus.store.appengine.DatastorePersistenceHandler.fetchObject
> (DatastorePersistenceHandler.java:363)
>
> org.datanucleus.state.JDOStateManagerImpl.loadUnloadedFieldsInFetchPlan
> (JDOStateManagerImpl.java:1597)
>org.datanucleus.state.JDOStateManagerImpl.isLoaded
> (JDOStateManagerImpl.java:1862)
>lrbcol.model.Nature.jdoGetname(Nature.scala)
>lrbcol.model.Nature.name(Nature.scala:18)
>lrbcol.model.Nature.toString(Nature.scala:24)
>java.lang.String.valueOf(String.java:2827)
>scala.StringBuilder.append(StringBuilder.scala:234)
>liftgae1.snippet.Natures$$anonfun$list$2.apply(Natures.scala:34)
>liftgae1.snippet.Natures$$anonfun$list$2.apply(Natures.scala:34)
> [I deleted the rest]
>
> >
>

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