Webflux WebClient java.lang.NullPointerException
我无法将webflux webclient连接到我的端点 在我的控制器中,我试图暴露巧克力DTO的热流。 当我尝试用postman调用端点时,它是有效的 这句话的存在是因为Stackoverflow希望我添加更多的文本,因为我的问题中有太多的代码,很抱歉出现了冲突Webflux WebClient java.lang.NullPointerException,java,spring-webflux,project-reactor,reactor-netty,Java,Spring Webflux,Project Reactor,Reactor Netty,我无法将webflux webclient连接到我的端点 在我的控制器中,我试图暴露巧克力DTO的热流。 当我尝试用postman调用端点时,它是有效的 这句话的存在是因为Stackoverflow希望我添加更多的文本,因为我的问题中有太多的代码,很抱歉出现了冲突 @RestController public class HotChocolateController { @GetMapping(value = "/stream/chocolate", produces = MediaTy
@RestController
public class HotChocolateController {
@GetMapping(value = "/stream/chocolate", produces = MediaType.APPLICATION_STREAM_JSON_VALUE)
public Flux<Chocolate> chocolateStream() {
return Flux.interval(Duration.ofMillis(500))
.map(l -> Chocolate.builder()
.id(String.valueOf(System.currentTimeMillis()))
.name("Hot Chocolate")
.build())
.log();
}
}
您知道为什么会发生这种情况吗?您只是订阅流并立即退出测试方法。 您可以将该方法更改为下面的代码,这样就可以看到get请求的结果:
@Test
public void testHotChocolate(){
Flux<String> chocolateSource =
client.get()
.uri("/stream/chocolate")
.retrieve()
.bodyToFlux(String.class)
.doOnNext(System.out::println);
chocolateSource.blockLast();
}
@测试
公共空间测试热巧克力(){
助焊剂巧克力源=
client.get()
.uri(“/stream/chocolate”)
.retrieve()
.bodyToFlux(String.class)
.doOnNext(System.out::println);
chocolateSource.blockLast();
}
您只需订阅流并立即退出测试方法。
您可以将该方法更改为下面的代码,这样就可以看到get请求的结果:
@Test
public void testHotChocolate(){
Flux<String> chocolateSource =
client.get()
.uri("/stream/chocolate")
.retrieve()
.bodyToFlux(String.class)
.doOnNext(System.out::println);
chocolateSource.blockLast();
}
@测试
公共空间测试热巧克力(){
助焊剂巧克力源=
client.get()
.uri(“/stream/chocolate”)
.retrieve()
.bodyToFlux(String.class)
.doOnNext(System.out::println);
chocolateSource.blockLast();
}
@Test
public void testHotChocolate(){
Flux<String> chocolateSource =
client.get()
.uri("/stream/chocolate")
.retrieve()
.bodyToFlux(String.class)
.doOnNext(System.out::println);
chocolateSource.blockLast();
}