Changed the URL of login api to identify the deployment bug

This commit is contained in:
rajesh
2024-10-25 13:33:01 +05:30
parent 02497de8b8
commit f4932c2d1d
2 changed files with 13 additions and 2 deletions

View File

@@ -4,6 +4,7 @@ import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -16,9 +17,11 @@ import org.springframework.stereotype.Component;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import net.gepafin.tendermanagement.constants.GepafinConstant;
import net.gepafin.tendermanagement.entities.HubEntity;
import net.gepafin.tendermanagement.entities.SamlResponseEntity;
import net.gepafin.tendermanagement.enums.SamlResponseStatusEnum;
import net.gepafin.tendermanagement.repositories.SamlResponseRepository;
import net.gepafin.tendermanagement.service.HubService;
import net.gepafin.tendermanagement.web.rest.api.errors.CustomValidationException;
import net.gepafin.tendermanagement.web.rest.api.errors.Status;
@@ -33,12 +36,16 @@ public class SamlFailureHandler implements AuthenticationFailureHandler {
@Autowired
private SamlResponseRepository samlResponseRepository;
@Autowired
private HubService hubService;
@Override
public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response,
AuthenticationException exception) throws IOException {
try {
logger.error("SAML login failed: " + exception.getMessage());
String inResponseTo = extractInResponseTo(feBaseUrl);
String inResponseTo = extractInResponseTo(exception.getMessage());
if (Boolean.FALSE.equals(StringUtils.isEmpty(inResponseTo))) {
SamlResponseEntity samlResponseLogEntity = samlResponseRepository
.findByInResponseToAndStatus(inResponseTo, SamlResponseStatusEnum.INITIATED.getValue())
@@ -46,6 +53,10 @@ public class SamlFailureHandler implements AuthenticationFailureHandler {
Translator.toLocale(GepafinConstant.INVALID_REQUEST)));
samlResponseLogEntity.setStatus(SamlResponseStatusEnum.FAILED.getValue());
samlResponseRepository.save(samlResponseLogEntity);
HubEntity hub = hubService.getHubByUuid(samlResponseLogEntity.getHubUuid());
if (Boolean.FALSE.equals(StringUtils.isEmpty(hub.getDomainName()))) {
feBaseUrl = hub.getDomainName();
}
}
response.sendRedirect(feBaseUrl + "/login");
} catch (Exception e) {