diff --git a/spring-boot-security/pom.xml b/spring-boot-security/pom.xml
index b10f8e6e47..130bd52235 100644
--- a/spring-boot-security/pom.xml
+++ b/spring-boot-security/pom.xml
@@ -10,10 +10,9 @@
Spring Boot Security Auto-Configuration
- org.springframework.boot
- spring-boot-starter-parent
- 1.5.9.RELEASE
-
+ com.baeldung
+ parent-modules
+ 1.0.0-SNAPSHOT
@@ -21,7 +20,7 @@
org.springframework.boot
spring-boot-dependencies
- 1.5.9.RELEASE
+ ${spring-boot.version}
pom
import
@@ -68,16 +67,6 @@
org.springframework.boot
spring-boot-maven-plugin
-
-
-
- repackage
-
-
- com.baeldung.springbootsecurity.basic_auth.SpringBootSecurityApplication
-
-
-
@@ -86,6 +75,7 @@
UTF-8
UTF-8
1.8
+ 1.5.9.RELEASE
diff --git a/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/form_login/configuration/SecurityConfiguration.java b/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/form_login/configuration/SecurityConfiguration.java
index 1f5c53eb2b..6ab522ef00 100644
--- a/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/form_login/configuration/SecurityConfiguration.java
+++ b/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/form_login/configuration/SecurityConfiguration.java
@@ -1,14 +1,24 @@
package com.baeldung.springbootsecurity.form_login.configuration;
-import com.baeldung.springbootsecurity.form_login.security.CustomAuthenticationFailureHandler;
+import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
+import org.springframework.http.HttpStatus;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
+import org.springframework.security.core.AuthenticationException;
import org.springframework.security.web.authentication.AuthenticationFailureHandler;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.util.Calendar;
+import java.util.HashMap;
+import java.util.Map;
+
@Configuration
@EnableWebSecurity
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
@@ -37,4 +47,21 @@ public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
public AuthenticationFailureHandler customAuthenticationFailureHandler() {
return new CustomAuthenticationFailureHandler();
}
+
+ /**
+ * Custom AuthenticationFailureHandler
+ */
+ public class CustomAuthenticationFailureHandler implements AuthenticationFailureHandler {
+ private final ObjectMapper objectMapper = new ObjectMapper();
+
+ @Override
+ public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, AuthenticationException exception) throws IOException, ServletException {
+ response.setStatus(HttpStatus.UNAUTHORIZED.value());
+ Map data = new HashMap<>();
+ data.put("timestamp", Calendar.getInstance().getTime());
+ data.put("exception", exception.getMessage());
+
+ response.getOutputStream().println(objectMapper.writeValueAsString(data));
+ }
+ }
}
diff --git a/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/form_login/security/CustomAuthenticationFailureHandler.java b/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/form_login/security/CustomAuthenticationFailureHandler.java
deleted file mode 100644
index 2617c1f475..0000000000
--- a/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/form_login/security/CustomAuthenticationFailureHandler.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package com.baeldung.springbootsecurity.form_login.security;
-
-import com.fasterxml.jackson.databind.ObjectMapper;
-import org.springframework.http.HttpStatus;
-import org.springframework.security.core.AuthenticationException;
-import org.springframework.security.web.authentication.AuthenticationFailureHandler;
-
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.util.Calendar;
-import java.util.HashMap;
-import java.util.Map;
-
-public class CustomAuthenticationFailureHandler implements AuthenticationFailureHandler {
- private final ObjectMapper objectMapper = new ObjectMapper();
-
- @Override
- public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, AuthenticationException exception) throws IOException, ServletException {
- response.setStatus(HttpStatus.UNAUTHORIZED.value());
- Map data = new HashMap<>();
- data.put("timestamp", Calendar.getInstance().getTime());
- data.put("exception", exception.getMessage());
-
- response.getOutputStream().println(objectMapper.writeValueAsString(data));
- }
-}