2012-02-09 64 views
0

我在grails應用程序中工作,我被要求爲我們的網站創建一個測試用戶。我確實在管理員控制器中編寫了代碼,並在他的頁面中給出了鏈接。代碼工作,我也可以看到這個測試用戶的細節。但是當我嘗試使用測試用戶詳細信息登錄時,我無法登錄。Grails手動測試用戶帳戶創建

def createTestUser = { 
    String timeStr = System.currentTimeMillis() + '' 
    //def user = userService.createQuickUser(timeStr + '@test.supjam.com', timeStr, 'test-user') // TODO requires supajam-domain 2011.12.5.1 
    def user = userService.createQuickUser(timeStr + '@test.supajam.com', 'test-user') 
    user.passwd = timeStr 
    user.dailyNews = false 
    user.offers = false 
    user.emailConfirmed = true 
    user.enabled = true 
    user.save(failOnError: true) 
} 

這是代碼。如果有人可以請求幫助,我會感謝他們。

+0

請出示您的userService代碼和登錄代碼 – 2012-02-09 10:39:06

+0

你通過「我可以看到這個測試用戶的詳細信息」,用戶是在數據庫中是什麼意思? – Peter 2012-02-09 11:42:06

+0

我得到了這個問題的解決方案...........我正在使用彈簧安全。而當添加測試用戶時,我採用了加密,因此無法匹配密碼。 – vivek 2012-02-10 16:02:12

回答

0

這類似的問題,有一些調試技巧:

Grails spring security login issue: /auth?login_error=1

我喜歡把log.debug()語句在authfail()如果塊。

if (exception instanceof AccountExpiredException) { 
    msg = SpringSecurityUtils.securityConfig.errors.login.expired 
    log.debug "exception - ${msg}" // added this 
}