J'essaie d'apprendre à utiliser les dépôts réactifs MongoDB en utilisant spring-boot 2.0.0.M2
, mais je crains de ne pas faire les choses comme prévu.Spring WebFlux: Exception d'exception sur une valeur nulle dans les dépôts réactifs Spring Data MongoDB?
Ceci est l'une de mes méthodes, qui essaie de trouver un User
par leur email. Mais s'il n'y en a pas, la méthode devrait lancer une exception.
@Override
public Mono<User> findByEmail(String email) {
User user = repository.findByEmail(email).block();
if(user == null) {
throw new NotFoundException("No user account was found with email: " + email);
}
return Mono.just(user);
}
Le dépôt se prolonge ReactiveCrudRepository<User, String>
, mais je crains qu'en utilisant .block()
j'empêcher cette méthode d'être réactif. Je suis nouveau à la programmation réactive, et j'ai du mal à trouver une bonne documentation à ce sujet. Quelqu'un peut-il me diriger dans la bonne direction?
Merci, j'avais totalement raté la méthode switchIfEmpty (...). – Andreas