Bonjour,
Je fais appel à deux microservices avec WebClient
J'ai deux méthodes (test1 et test2) dans mon service pour tester unitairement les appels. Ces deux méthodes fonctionnent
Je souhaiterai faire appel au premier "ouvrageClient" pour récupérer un Flux d'Ouvrage et à partir de ce flux d'ouvrage faire appel à l'autre WebClient "operationClient" pour récupérer un Flux d'opération.
Par contre, j'ai une erreur à la compilation dans la méthode getRelatedOperations
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 java: incompatible types: inference variable V has incompatible bounds equality constraints: com.rte.prisk.core.operation.dto.query.OperationLightDto lower bounds: reactor.core.publisher.Flux<com.rte.prisk.core.operation.dto.query.OperationLightDto>
Avez-vous une idée pour cette erreur ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 public class RelatedOperationService { private OperationClient operationClient; private OuvrageClient ouvrageClient; public Flux<OperationLightDto> getRelatedOperations(Long[] ouvrageIds){ final Flux<OuvrageDto> ouvrageFlux = ouvrageClient.getRelatedOuvrages(ouvrageIds); //équivaut à la méthode test1 return ouvrageFlux .map(ouvrageDto -> { return operationClient.getRelatedOperations(ouvrageDto.getId());// équivaut à la méthode test2 }); } public Flux<OuvrageDto> test1(Long ouvrageIds[]){ return ouvrageClient.getRelatedOuvrages(ouvrageIds); } public Flux<OperationLightDto> test2(Long ouvrageId){ return operationClient.getRelatedOperations(ouvrageId); } }
Bien cordialement
Partager