Hi,

I'm using CRUDify, but all domain objects belong to an account, so I
need to add the current user's account id to the queries made by
CRUDIfy. This works fine for the list Loc:

override def findForListParams: List[QueryParam[Vehicle]] =
      List(OrderBy(primaryKeyField, Ascending), By(account, 
User.currentUser.open_!.account.is))

But for the edit/delete Locs, this fails:

 override def findForParam(in: String): Box[Vehicle] = {
    Log.info("User %s, id=%s".format(User.currentUser, User.currentUserId))
    find(List(in,By(account, User.currentUser.open_!.account.is)))
 }
 
Both currentUser & currentUserId is empty at this point in the request
cycle, as can be seen from this log output:

INFO - User Empty, id=Empty
java.lang.NullPointerException: Trying to open an empty Box
        at net.liftweb.util.EmptyBox.open_$bang(Box.scala:370)
        at net.liftweb.util.EmptyBox.open_$bang(Box.scala:366)
        at dk.model.Vehicle$$$M$f617a4a2.findForParam(Vehicle.scala:276)
        at dk.model.Vehicle$$$A$f617a4a2.findForParam(<generated>)
        at dk.model.Vehicle$.findForParam(Vehicle.scala:259)
        at 
net.liftweb.mapper.CRUDify$$anon$6$$anonfun$4.gd4$1(CRUDify.scala:174)
        at 
net.liftweb.mapper.CRUDify$$anon$6$$anonfun$4.isDefinedAt(CRUDify.scala:170)
        at 
net.liftweb.mapper.CRUDify$$anon$6$$anonfun$4.isDefinedAt(CRUDify.scala:170)
        at net.liftweb.util.NamedPF.isDefinedAt(NamedPartialFunction.scala:29)
        at 
net.liftweb.sitemap.Loc$$anonfun$rewritePF$1$$anon$1.isDefinedAt(Loc.scala:77)
        at 
net.liftweb.sitemap.Loc$$anonfun$rewritePF$1$$anon$1.isDefinedAt(Loc.scala:70)
        at 
net.liftweb.util.NamedPF$$anonfun$find$1.apply(NamedPartialFunction.scala:51)
        at 
net.liftweb.util.NamedPF$$anonfun$find$1.apply(NamedPartialFunction.scala:51)
        at scala.List.find(List.scala:1048)
        at net.liftweb.util.NamedPF$.find(NamedPartialFunction.scala:51)
        at net.liftweb.util.NamedPF$.applyBox(NamedPartialFunction.scala:91)
        at net.liftweb.http.Req$.processRewrite$1(Req.scala:114)
        at net.liftweb.http.Req$.apply(Req.scala:123)
        at 
net.liftweb.http.provider.HTTPProvider$class.service(HTTPProvider.scala:51)
        at net.liftweb.http.LiftFilter.service(LiftServlet.scala:481)
        at 
net.liftweb.http.provider.servlet.ServletFilterProvider$class.protected$service(ServletFilterProvider.scala:41)
        at net.liftweb.http.LiftFilter.protected$service(LiftServlet.scala:481)
        at 
net.liftweb.http.provider.servlet.ServletFilterProvider$$anonfun$doFilter$1.apply(ServletFilterProvider.scala:41)
        at 
net.liftweb.http.provider.servlet.ServletFilterProvider$$anonfun$doFilter$1.apply(ServletFilterProvider.scala:36)
        at 
net.liftweb.http.RequestVarHandler$$anonfun$apply$5$$anonfun$apply$6$$anonfun$apply$7$$anonfun$apply$8.apply(Vars.scala:212)
        at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala:65)
        at 
net.liftweb.http.RequestVarHandler$$anonfun$apply$5$$anonfun$apply$6$$anonfun$apply$7.apply(Vars.scala:211)
        at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala:65)
        at 
net.liftweb.http.RequestVarHandler$$anonfun$apply$5$$anonfun$apply$6.apply(Vars.scala:210)
        at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala:65)
        at 
net.liftweb.http.RequestVarHandler$$anonfun$apply$5.apply(Vars.scala:209)
        at net.liftweb.util.ThreadGlobal.doWith(ThreadGlobal.scala:65)
        at net.liftweb.http.RequestVarHandler$.apply(Vars.scala:208)

I think I'm seeing something similar to the problem mentioned here
http://groups.google.com/group/liftweb/browse_thread/thread/0190091bcdb6d18a/90a33ace15273d3d?lnk=raot

except now also the User.currentUserId SesssionVar seems to be
uninitialized.

So, is this not supported? Is there a workaround? 

Just back from two weeks of vacation, I might have missed something
obvious :-)

/Jeppe

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

Reply via email to