Files
sake/src/main/java/com/wb/domainserver/exception/response/CustomOauthFailureException.java
2025-10-29 17:08:05 +09:00

33 lines
1.3 KiB
Java

package com.wb.domainserver.exception.response;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.web.authentication.AuthenticationFailureHandler;
import java.io.IOException;
import java.io.PrintWriter;
@Slf4j
public class CustomOauthFailureException implements AuthenticationFailureHandler {
/*앨리스랩 회원 정보 없을 시 예외처리*/
@Override
public void onAuthenticationFailure(HttpServletRequest request,
HttpServletResponse response,
AuthenticationException exception) throws IOException, ServletException {
String msg = exception.getMessage();
response.setContentType("text/html; charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<script>");
out.println("if (window.opener && !window.opener.closed) {");
out.println(" window.close();");
out.println(" window.opener.oauthFailureAlert('"+msg+"'); }");
out.println("</script>");
out.flush();
}
}