| package com.mzl.flower.config.security.handler; | 
|   | 
| import com.fasterxml.jackson.databind.ObjectMapper; | 
| import com.mzl.flower.base.R; | 
| import com.mzl.flower.base.ReturnDataDTO; | 
| import lombok.Builder; | 
| 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; | 
|   | 
| @Builder | 
| public class SelfAuthenticationFailureHandler implements AuthenticationFailureHandler { | 
|   | 
|     private ObjectMapper objectMapper; | 
|   | 
|     @Override | 
|     public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, AuthenticationException exception) throws IOException, ServletException { | 
|         response.setContentType("application/json;charset=UTF-8"); | 
|         ReturnDataDTO resultDTO = new ReturnDataDTO(R.AuthenticationException.getCode(), null, exception.getMessage()); | 
|         response.getWriter().write(objectMapper.writeValueAsString(resultDTO)); | 
|     } | 
| } |