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