diff --git a/core/src/main/java/org/springframework/security/authentication/AccountStatusUserDetailsChecker.java b/core/src/main/java/org/springframework/security/authentication/AccountStatusUserDetailsChecker.java index d816fd893d..89512454bb 100644 --- a/core/src/main/java/org/springframework/security/authentication/AccountStatusUserDetailsChecker.java +++ b/core/src/main/java/org/springframework/security/authentication/AccountStatusUserDetailsChecker.java @@ -15,17 +15,20 @@ */ package org.springframework.security.authentication; +import org.springframework.context.MessageSource; +import org.springframework.context.MessageSourceAware; import org.springframework.security.core.SpringSecurityMessageSource; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsChecker; import org.springframework.context.support.MessageSourceAccessor; +import org.springframework.util.Assert; /** * @author Luke Taylor */ -public class AccountStatusUserDetailsChecker implements UserDetailsChecker { +public class AccountStatusUserDetailsChecker implements UserDetailsChecker, MessageSourceAware { - protected final MessageSourceAccessor messages = SpringSecurityMessageSource + protected MessageSourceAccessor messages = SpringSecurityMessageSource .getAccessor(); public void check(UserDetails user) { @@ -51,4 +54,13 @@ public class AccountStatusUserDetailsChecker implements UserDetailsChecker { "User credentials have expired")); } } + + /** + * @since 5.2 + */ + @Override + public void setMessageSource(MessageSource messageSource) { + Assert.notNull(messageSource, "messageSource cannot be null"); + this.messages = new MessageSourceAccessor(messageSource); + } } diff --git a/core/src/main/resources/org/springframework/security/messages_nl.properties b/core/src/main/resources/org/springframework/security/messages_nl.properties new file mode 100644 index 0000000000..e69de29bb2