1

给定一个用“IS_AUTHENTICATED_FULL”注释的控制器方法和注入的springSecurityService,我很困惑为什么偶尔会看到由于空用户实例而引发的异常。

例如,我的控制器动作就是这样..

@Secured(['IS_AUTHENTICATED_FULLY'])
  def ammendSomething = {

    def User user = springSecurityService.currentUser

    println user.fieldTest
    render "OK"
  }

大量更改以显示重要位、注释、检索用户和访问字段的调用。

以上导致 NullPointerException: Cannot get property 'fieldTest' on null object

这仅在生产中发生,我无法在开发中复制该问题,因为我在未登录时对此进行的任何调用,我被正确重定向到“auth”登录过程。

因此,当 springSecurityService 中没有 currentUser 时,pringln user.fieldTest 是如何执行的,我感到非常困惑。

任何想法表示赞赏。

谢谢,

4

0 回答 0