For group benifit, the fix to Req solves the comet issue. Awesome. Cheers
Tim Sent from my iPhone On 11 Mar 2009, at 22:51, David Pollak <[email protected]> wrote: > > > On Wed, Mar 11, 2009 at 3:43 PM, Derek Chen-Becker <[email protected] > > wrote: > The git diff makes it hard to see what happened (it looks like Req > was replaced wholesale). What did it end up being? > > We were not always doing null testing for request.request. I fixed > that. > > There are cases where the HttpServletRequest can be null and those > cases are now fixed. > > > Thanks, > > Derek > > On Wed, Mar 11, 2009 at 9:15 AM, David Pollak <[email protected] > > wrote: > Fixed in the 1.1 branch. It might make sense to back-port to the > 1.0 branch > > > On Wed, Mar 11, 2009 at 1:49 PM, marius d. <[email protected]> > wrote: > > I'll look on it this evening ... > > On Mar 11, 1:12 pm, Timothy Perrett <[email protected]> wrote: > > Just realised i had not posted the stack trace: > > > > java.lang.NullPointerException > > at net.liftweb.http.LiftRules$$anonfun > $defaultLocaleCalculator > > $1.apply(LiftRules.scala:316) > > at net.liftweb.http.LiftRules$$anonfun > $defaultLocaleCalculator > > $1.apply(LiftRules.scala:316) > > at net.liftweb.util.Full.flatMap(Box.scala:332) > > at net.liftweb.http.LiftRules$.defaultLocaleCalculator > > (LiftRules.scala:316) > > at com.xmpie.bos.localization.Localizer$$anonfun > > $localeCalculator$1.workOutLocale$1(Localizer.scala:95) > > at com.xmpie.bos.localization.Localizer$$anonfun > > $localeCalculator$1.apply(Localizer.scala:100) > > at com.xmpie.bos.localization.Localizer$$anonfun > > $localeCalculator$1.apply(Localizer.scala:90) > > at net.liftweb.util.Full.flatMap(Box.scala:332) > > at com.xmpie.bos.localization.Localizer$.localeCalculator > > (Localizer.scala:90) > > at com.xmpie.bos.localization.Localizer$$anonfun$boot > $2.apply > > (Localizer.scala:54) > > at com.xmpie.bos.localization.Localizer$$anonfun$boot > $2.apply > > (Localizer.scala:54) > > at net.liftweb.http.S$.locale(S.scala:171) > > at net.liftweb.http.S$$anonfun$resourceBundles$1$$anonfun > $apply > > $11.apply(S.scala:242) > > at net.liftweb.http.S$$anonfun$resourceBundles$1$$anonfun > $apply > > $11.apply(S.scala:242) > > at net.liftweb.util.EmptyBox.openOr(Box.scala:372) > > at net.liftweb.http.S$$anonfun$resourceBundles > $1.apply(S.scala: > > 241) > > at net.liftweb.http.S$$anonfun$resourceBundles > $1.apply(S.scala: > > 239) > > at scala.List.flatMap(List.scala:1125) > > at net.liftweb.http.S$.resourceBundles(S.scala:239) > > at net.liftweb.http.S$.$qmark(S.scala:267) > > at com.xmpie.bos.comet.JobNotifier.status(JobNotifier.scala: > > 33) > > at com.xmpie.bos.comet.JobNotifier.render(JobNotifier.scala: > > 34) > > at net.liftweb.http.CometActor$class.net$liftweb$http > > $CometActor$$performReRender(CometActor.scala:474) > > at net.liftweb.http.CometActor$$anonfun$net$liftweb$http > > $CometActor$$_mediumPriority$1.apply(CometActor.scala:374) > > at net.liftweb.http.CometActor$$anonfun$net$liftweb$http > > $CometActor$$_mediumPriority$1.apply(CometActor.scala:338) > > at scala.PartialFunction$$anon > $1.apply(PartialFunction.scala: > > 38) > > at scala.PartialFunction$$anon > $1.apply(PartialFunction.scala: > > 37) > > at scala.PartialFunction$$anon > $1.apply(PartialFunction.scala: > > 37) > > at net.liftweb.http.CometActor$$anon$1$$anonfun$apply$10$ > > $anonfun$apply$11$$anonfun$apply$12.apply(CometActor.scala:303) > > at net.liftweb.http.CometActor$$anon$1$$anonfun$apply$10$ > > $anonfun$apply$11$$anonfun$apply$12.apply(CometActor.scala:302) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$.functionLifespan(S.scala:520) > > at net.liftweb.http.CometActor$$anon$1$$anonfun$apply$10$ > > $anonfun$apply$11.apply(CometActor.scala:302) > > at net.liftweb.http.CometActor$$anon$1$$anonfun$apply$10$ > > $anonfun$apply$11.apply(CometActor.scala:302) > > at net.liftweb.http.S$.net$liftweb$http$S$ > $wrapQuery(S.scala: > > 402) > > at net.liftweb.http.S$$anonfun$net$liftweb$http$S$ > > $_nest2InnerInit$1$$anonfun$apply$18.apply(S.scala:457) > > at net.liftweb.http.S$.net$liftweb$http$S$$doAround(S.scala: > > 376) > > at net.liftweb.http.S$$anonfun$net$liftweb$http$S$ > > $_nest2InnerInit$1.apply(S.scala:455) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$.net$liftweb$http$S$$_nest2InnerInit > > (S.scala:454) > > at net.liftweb.http.S$$anonfun$net$liftweb$http$S$ > $_innerInit > > $1$$anonfun$apply$21$$anonfun$apply$22$$anonfun$apply$23$$anonfun > $apply > > $24$$anonfun$apply$25$$anonfun$apply$26.apply(S.scala:475) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$$anonfun$net$liftweb$http$S$ > $_innerInit > > $1$$anonfun$apply$21$$anonfun$apply$22$$anonfun$apply$23$$anonfun > $apply > > $24$$anonfun$apply$25.apply(S.scala:474) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$$anonfun$net$liftweb$http$S$ > $_innerInit > > $1$$anonfun$apply$21$$anonfun$apply$22$$anonfun$apply$23$$anonfun > $apply > > $24.apply(S.scala:473) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$$anonfun$net$liftweb$http$S$ > $_innerInit > > $1$$anonfun$apply$21$$anonfun$apply$22$$anonfun$apply > $23.apply(S.scala: > > 472) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$$anonfun$net$liftweb$http$S$ > $_innerInit > > $1$$anonfun$apply$21$$anonfun$apply$22.apply(S.scala:471) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$$anonfun$net$liftweb$http$S$ > $_innerInit > > $1$$anonfun$apply$21.apply(S.scala:470) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$$anonfun$net$liftweb$http$S$ > $_innerInit > > $1.apply(S.scala:469) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$.net$liftweb$http$S$ > $_innerInit(S.scala: > > 468) > > at net.liftweb.http.S$$anonfun$_init$1$$anonfun$apply$29$ > > $anonfun$apply$30$$anonfun$apply$31$$anonfun$apply$32.apply(S.scala: > > 499) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$$anonfun$_init$1$$anonfun$apply$29$ > > $anonfun$apply$30$$anonfun$apply$31.apply(S.scala:498) > > at net.liftweb.http.RequestVarHandler$$anonfun$apply$3$ > $anonfun > > $apply$4$$anonfun$apply$5$$anonfun$apply$6.apply(Vars.scala:197) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.RequestVarHandler$$anonfun$apply$3$ > $anonfun > > $apply$4$$anonfun$apply$5.apply(Vars.scala:196) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.RequestVarHandler$$anonfun$apply$3$ > $anonfun > > $apply$4.apply(Vars.scala:195) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.RequestVarHandler$$anonfun$apply$3.apply > > (Vars.scala:194) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.RequestVarHandler$.apply(Vars.scala:193) > > at net.liftweb.http.S$$anonfun$_init$1$$anonfun$apply$29$ > > $anonfun$apply$30.apply(S.scala:497) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$$anonfun$_init$1$$anonfun$apply > $29.apply > > (S.scala:496) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$$anonfun$_init$1.apply(S.scala:495) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.S$._init(S.scala:494) > > at net.liftweb.http.S$.init(S.scala:338) > > at net.liftweb.http.S$.initIfUninitted(S.scala:635) > > at net.liftweb.http.CometActor$$anon$1$$anonfun$apply > $10.apply > > (CometActor.scala:301) > > at net.liftweb.http.CometActor$$anon$1$$anonfun$apply > $10.apply > > (CometActor.scala:301) > > at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala: > 65) > > at net.liftweb.http.CometActor$$anon > $1.apply(CometActor.scala: > > 300) > > at net.liftweb.http.CometActor$$anon > $1.apply(CometActor.scala: > > 298) > > at scala.actors.Reaction.run(Reaction.scala:78) > > at scala.actors.Scheduler$$anon$2.run(Scheduler.scala:77) > > at scala.actors.FJTaskRunner.run(Unknown Source) > > > > On Mar 10, 5:22 pm, Timothy Perrett <[email protected]> wrote: > > > > > For sure im not sure how to write a spec test for something > like this? Is > > > there anything I can use / copy as a starting point? > > > > > Cheers, Tim > > > > > On 10/03/2009 17:11, "David Pollak" > <[email protected]> wrote: > > > > > > They do have S and LiftSession. > > > > > > The case null => guard should catch a null. > > > > > > Tim... can you add a test to the code that triggers your > problem? That way we > > > > can fix the problem and make sure it doesn't happen again. > > > > > -- > Lift, the simply functional web framework http://liftweb.net > Beginning Scala http://www.apress.com/book/view/1430219890 > Follow me: http://twitter.com/dpp > Git some: http://github.com/dpp > > > > > > > > > -- > Lift, the simply functional web framework http://liftweb.net > Beginning Scala http://www.apress.com/book/view/1430219890 > Follow me: http://twitter.com/dpp > Git some: http://github.com/dpp > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~----------~----~----~----~------~----~------~--~---
