Files
unionflow-server-impl-quarkus/src/main/java/dev/lions/unionflow/server/exception/JsonProcessingExceptionMapper.java
lionsdev 6e9841b3bb
Some checks failed
CI/CD Pipeline / pipeline (push) Failing after 3m22s
fix(disaster-recovery 2/2): restaurer 242 fichiers Java modifiés par a72ab54
Suite à la récupération précédente (044ca4b) qui n'avait restauré que les
fichiers SUPPRIMÉS, ce commit restaure les MODIFICATIONS d'entités/services
qui étaient nécessaires pour que les fichiers restaurés compilent.

Restaurés depuis a72ab54^ (= 31330d9 + corrections) :
- Entities : Organisation, FormuleAbonnement, AuditService, MembreOrganisation, SouscriptionOrganisation, etc.
- Services : MigrerOrganisationsVersKeycloakService, ComptabilitePdfService, KycAmlService, AuditService.logKycRisqueEleve, etc.
- Resources : PaiementUnifieResource, etc.

Backend compile désormais (BUILD SUCCESS).
2026-04-25 01:05:08 +00:00

41 lines
1.3 KiB
Java

package dev.lions.unionflow.server.exception;
import com.fasterxml.jackson.core.JsonProcessingException;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.ext.ExceptionMapper;
import jakarta.ws.rs.ext.Provider;
import lombok.extern.slf4j.Slf4j;
import java.util.HashMap;
import java.util.Map;
/**
* Exception Mapper pour les erreurs de traitement JSON (parsing, format, etc.).
* Retourne un 400 Bad Request avec un message détaillé.
*
* @author UnionFlow Team
* @version 1.0
* @since 2026-03-19
*/
@Slf4j
@Provider
public class JsonProcessingExceptionMapper implements ExceptionMapper<JsonProcessingException> {
@Override
public Response toResponse(JsonProcessingException exception) {
log.warn("JSON processing error: {}", exception.getMessage());
Map<String, Object> errorBody = new HashMap<>();
errorBody.put("message", "Erreur de traitement JSON");
errorBody.put("details", exception.getOriginalMessage() != null
? exception.getOriginalMessage()
: exception.getMessage());
errorBody.put("status", 400);
errorBody.put("timestamp", java.time.LocalDateTime.now().toString());
return Response.status(Response.Status.BAD_REQUEST)
.entity(errorBody)
.build();
}
}