问题标签 [spring-webflux]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4686 浏览

spring-boot - 将应用程序类型设置为响应式时启动spring boot集成测试失败

我有一个通过 Spring boot 2.0.0.M3 使用 Spring Webflux 的应用程序。

应用程序在运行时设置为REACTIVE类型。

如果运行主应用程序,反应式应用程序可以正常工作。但我未能在我的 Spring Boot 集成测试中启动这个应用程序。

我宣布测试如下,

运行测试用例时出现以下错误,

java.lang.IllegalStateException:无法加载 ApplicationContext

intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:51) 在 com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242) 在 com.intellij.rt.execution。 junit.JUnitStarter.main(JUnitStarter.java:70) 原因:org.springframework.context.ApplicationContextException:无法启动反应式网络服务器;嵌套异常是 org.springframework.context.ApplicationContextException:由于缺少 ReactiveWebServerFactory bean,无法启动 ReactiveWebApplicationContext。在 org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.onRefresh(ReactiveWebServerApplicationContext.java:64) 在 org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543) 在 org.springframework.boot。由于缺少 ReactiveWebServerFactory bean,无法启动 ReactiveWebApplicationContext。 在 org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.getWebServerFactory(ReactiveWebServerApplicationContext.java:103) 在 org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.createWebServer(ReactiveWebServerApplicationContext.java:87) 在 org.springframework .boot.web.reactive.context.ReactiveWebServerApplicationContext.onRefresh(ReactiveWebServerApplicationContext.java:61) ... 44 更多

使用 webflux 运行 spring boot 集成测试是否有任何配置问题?

您可以从这里访问完整的演示项目。

0 投票
1 回答
2100 浏览

spring - 从 RestTemplate 转移到 WebClient 的问题 (Spring Boot 2.0.0.M3)

在这个问题上被难住了一段时间!

从常规 MVC 项目转移到响应式项目,并且正在使用 Spring Boot(新版本 2.0.0.M3)。

在出现这个特殊问题之前,我对整个图书馆的问题为零。

在使用 WebClient 时,我有一个不起作用的请求。它以前与 RestTemplate 一起工作得很好:

我的 WebClient 代码:

我也尝试过先生成身体:

这里有什么明显的错误吗?我看不出两者之间有任何问题会导致第二个失败......

编辑: RestTemplate 提供 204 的响应。 WebClient 提供 400 的响应,表示正文是无效的 JSON。使用上面 WebClient 的第二个示例,我可以打印body变量并查看它是正确的 JSON。

Edit2:我正在序列化的 POJO 类:

0 投票
2 回答
4608 浏览

spring - HATEOAS 关于 Spring Flux/Mono 响应

我一直在按照指南使用 Spring HATEOAS:

https://spring.io/guides/gs/rest-hateoas/#initial

现在我想使用一个存储库并输出一个 Flux/Mono 响应:

如何在 Flux/Mono 响应中使用 Spring HATEOAS?有可能吗?

0 投票
2 回答
13865 浏览

project-reactor - 如何在弹簧反应器中将两个发布者合二为一

我已经实现了一个虚拟的反应式存储库,但我正在努力使用更新方法:

一方面我有传入Mono<User> updateMono的出版商,另一方面我有另一个出版商Mono.justOrEmpty(this.users.get(id))

如何将它们组合在一起,进行更新并仅回馈一个发布者?

我唯一想到的是:

这是对的吗?

0 投票
1 回答
248 浏览

spring - 带有码头的新功能 Web 框架

我想为Spring 5 中的新功能设置一个示例:功能 Web 框架 所以我设置了一个RouteConfiguration

我使用码头开始我的应用程序,起初它似乎工作......直到我想调用我的一个方法:localhost:8080/first它返回一个404.

我是否定义了我的路由配置错误或为什么路由不可访问?

编辑

使用 netty,您需要提供如下服务器配置:

但我找不到码头这样的东西。

编辑 2

我的依赖:

弹簧启动版本:2.0.0.M3

0 投票
3 回答
12324 浏览

spring - 如何使用 Spring WebFlux 返回 404

我有一个像这样的控制器(在 Kotlin 中):

我想知道是否有比抛出带有注释的异常更好的方法@ResponseStatus(code = NOT_FOUND)

0 投票
1 回答
1567 浏览

spring - 将 Spring Websession 与 Spring Reactive Web Flux 集成

这里有一个新的用于 spring 新的响应式 web 通量 api 的 http 会话实现。我想将最新的 Spring Web 会话集成到新的 Spring 响应式 Web Flux 中。我似乎无法得到它,我尝试将它作为 bean 注入,但它不起作用。我想像往常一样使用 HttpSession 注入它

就像是

0 投票
1 回答
2213 浏览

spring-security - 如何创建数据类实现 Spring Secuirty 特定的 UserDetails

我正在尝试将一些spring-webflux示例代码迁移到 kotlin。

目前我想将我的Spring Data Mongo示例转换为 kotlin。有一个User,原始 Data Mongo 版本看起来:

UserDetails接口包含一些getXXX和isXXX方法,如何在kotlin中添加override和属性usernamepassword

顺便说一句:目前我UserDetails在 kotlin 版本中删除了,请在此处查看

更新怎么添加UserDetails接口呢?这个问题很有帮助

新问题是使用破坏时,它不起作用。

User位于https://github.com/hantsy/spring-reactive-sample/blob/master/kotlin-gradle/src/main/kotlin/com/example/demo/User.kt。_ 目前我注释掉了实施的版本UserDetails。如果我使用注释代码(用户:用户详细信息),其中的desstruction代码Beans.kt将在 IDE 中报告错误。错误发生在username并且password破坏用户类型的声明初始化程序!必须有一个component2函数

0 投票
4 回答
35638 浏览

spring - WebFlux 功能:如何检测空 Flux 并返回 404?

我有以下简化的处理程序函数(Spring WebFlux 和使用 Kotlin 的功能 API)。但是,我需要提示如何检测空的 Flux,然后在 Flux 为空时将 noContent() 用于 404。

0 投票
2 回答
14564 浏览

spring - 有没有办法在spring webflux和spring data react中实现分页

我试图理解 spring 5 的反应部分。我创建了简单的休息端点,用于使用 springweb-flux和 spring 数据反应 (mongo) 查找所有实体,但看不到如何实现分页。

这是我在 Kotlin 中的简单示例:

这是否意味着反应式端点不需要分页?是否有某种方法可以使用此堆栈从服务器端实现分页?