diff --git a/apps/sykemelding-api/src/main/java/no/nav/registre/testnorge/sykemelding/consumer/command/SyfosmreglerPostValidateCommand.java b/apps/sykemelding-api/src/main/java/no/nav/registre/testnorge/sykemelding/consumer/command/SyfosmreglerPostValidateCommand.java index b3737a68a61..6b8217773b1 100644 --- a/apps/sykemelding-api/src/main/java/no/nav/registre/testnorge/sykemelding/consumer/command/SyfosmreglerPostValidateCommand.java +++ b/apps/sykemelding-api/src/main/java/no/nav/registre/testnorge/sykemelding/consumer/command/SyfosmreglerPostValidateCommand.java @@ -3,6 +3,7 @@ import lombok.RequiredArgsConstructor; import no.nav.registre.testnorge.sykemelding.dto.ReceivedSykemeldingDTO; import no.nav.testnav.libs.dto.sykemelding.v1.ValidationResultDTO; +import no.nav.testnav.libs.reactivecore.utils.WebClientFilter; import org.springframework.http.HttpHeaders; import org.springframework.web.reactive.function.client.WebClient; import reactor.core.publisher.Mono; @@ -26,6 +27,11 @@ public Mono call() { .header(HttpHeaders.AUTHORIZATION, "Bearer " + accessToken) .bodyValue(receivedSykemelding) .retrieve() - .bodyToMono(ValidationResultDTO.class); + .bodyToMono(ValidationResultDTO.class) + .doOnError(WebClientFilter::logErrorMessage) + .onErrorResume(error -> Mono.just(ValidationResultDTO.builder() + .httpStatus(WebClientFilter.getStatus(error)) + .message(WebClientFilter.getMessage(error)) + .build())); } } diff --git a/apps/sykemelding-api/src/test/java/no/nav/registre/testnorge/sykemelding/mapper/SykemeldingValidateMappingStrategyTest.java b/apps/sykemelding-api/src/test/java/no/nav/registre/testnorge/sykemelding/mapper/SykemeldingValidateMappingStrategyTest.java index e5a2cbf4d96..5cf6c932952 100644 --- a/apps/sykemelding-api/src/test/java/no/nav/registre/testnorge/sykemelding/mapper/SykemeldingValidateMappingStrategyTest.java +++ b/apps/sykemelding-api/src/test/java/no/nav/registre/testnorge/sykemelding/mapper/SykemeldingValidateMappingStrategyTest.java @@ -6,8 +6,6 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.junit.jupiter.MockitoExtension; -import static org.junit.jupiter.api.Assertions.*; - @ExtendWith(MockitoExtension.class) class SykemeldingValidateMappingStrategyTest { diff --git a/libs/data-transfer-objects/src/main/java/no/nav/testnav/libs/dto/sykemelding/v1/ValidationResultDTO.java b/libs/data-transfer-objects/src/main/java/no/nav/testnav/libs/dto/sykemelding/v1/ValidationResultDTO.java index ac5711883be..3b7241057b8 100644 --- a/libs/data-transfer-objects/src/main/java/no/nav/testnav/libs/dto/sykemelding/v1/ValidationResultDTO.java +++ b/libs/data-transfer-objects/src/main/java/no/nav/testnav/libs/dto/sykemelding/v1/ValidationResultDTO.java @@ -4,6 +4,7 @@ import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; +import org.springframework.http.HttpStatus; import java.util.ArrayList; import java.util.List; @@ -16,6 +17,9 @@ @AllArgsConstructor public class ValidationResultDTO { + private HttpStatus httpStatus; + private String message; + private AllowedValues status; private List ruleHits;