2014-01-19 3 views
1

Я играю с рамкой Grails 2 в дополнение к плагину с пружинной защитой.Grails 2 с пружинной защитой: defaultFailureUrl не работает

Я создал пользовательскую форму входа, которая должна быть всегда видна на главной странице.

Таким образом, пользователь всегда должен быть перенаправлен на главную страницу. Независимо от того, произошла ли ошибка или нет.

В случае успешного входа в систему все работает очень хорошо, но в случае ошибки объем флэш-памяти теряется во время перенаправления. Поэтому я не могу показать причину неудачной аутентификации.

В соответствии с документацией необходимо отрегулировать только параметр 'defaultFailureUrl'. Но это не работает должным образом.

Есть ли другие параметры, необходимые для достижения этой функциональности?

Мои Config.groovy

// Added by the Spring Security Core plugin: 
grails.plugin.springsecurity.successHandler.defaultTargetUrl="/" 
grails.plugin.springsecurity.successHandler.alwaysUseDefault=true 
grails.plugin.springsecurity.failureHandler.defaultFailureUrl = '/' 
grails.plugin.springsecurity.auth.loginFormUrl = '/' 
grails.plugin.springsecurity.logout.postOnly = false // Logout through direct link 
grails.plugin.springsecurity.userLookup.userDomainClassName = 'de.msg.login.User' 
grails.plugin.springsecurity.userLookup.authorityJoinClassName = 'de.msg.login.UserRole' 
grails.plugin.springsecurity.authority.className = 'de.msg.login.Role' 

Я надеюсь, что кто-то может понять решение;)

+0

Я получил решение самостоятельно. Flash.messages всегда потерялся, поэтому мне пришлось переопределить метод authFail() LoginController. Вместо того, чтобы перенаправлять, я теперь перехожу к контроллеру. В моем контроллере я перенаправляю затем на главную страницу своего приложения. –

ответ

0

Как я понял, вы хотите, чтобы показать сообщение на той же странице входа в систему после того, как отправить страницу входа в систему.

Используйте это свойство, вероятно, он будет работать: установить это в Config.groovy

failureHandler.useForward=false 

See this link

+0

Спасибо за ваш ответ, но я думаю, что упомянутое выше свойство «false» по умолчанию. –

Смежные вопросы