Как вернуть Flux как ответ в Spring Web FluxJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как вернуть Flux как ответ в Spring Web Flux

Сообщение Anonymous »

Я не могу вернуть Flux в ответ на . В моем репозитории я возвращаю Flux . Теперь я хочу обработать этот ответ в контроллере с помощью Switchifempty для обработки 404 кода ошибки с помощью Switchifempty . Ниже я попробовал:
Репозиторий

Код: Выделить всё

public interface StudentRepository extends R2dbcRepository{

Flux findByFirstName(String firstName);

}
service

Код: Выделить всё

public Flux getStudentByName(String name){
return repo.findByFirstName(name);
}
контроллер (вот где я не могу создать ответ)

Код: Выделить всё

@GetMapping(value="student/name/{name}")
public Flux getStudentByName(@PathVariable(name = "name",required = true)String name) {
Flux map = service.getStudentByName(name)
.switchIfEmpty(Mono.error(new NoSuchElementException("student not found")))
.map(stu->new ResponseEntity(Mono.just(stu),HttpStatus.OK));
return map;
}
, поскольку я получал только одну поддержку ответа Я попробовал с кодом ниже:

Код: Выделить всё

@GetMapping(value="student/name/{name}")
public Flux getStudentByName(@PathVariable(name = "name",required = true)String name) {
Flux flatMap = service.getStudentByName(name)
.switchIfEmpty(Mono.error(new NoSuchElementException("student not found")))
.flatMap(stu->Flux.just(new ResponseEntity(stu,HttpStatus.OK)));
return flatMap;
}
Я все еще получаю одно и то же исключение, то есть только один поддерживаемый ответом
Я обработал noshelementexception как глобальное исключение.
Как я возвращаю Flux insude insee insee insee insee in insee in insure insee presection .. или наоборот. Flux . Каким подходом я должен пойти, чтобы вернуть объект потока.

Подробнее здесь: https://stackoverflow.com/questions/796 ... g-web-flux
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»