我有点纠结于一个琐碎的任务:每当我用reactive spring WebClient或query reactive MongoDBRepository查询外部API时,我都想记录有多少实体通过了我的flux,例如。以记录类似“在数据库中找到n条记录。”的消息。例如:
return repository.findAll()
.doOnComplete { log.info("Found total n records!") } // how to get the n?
.filter { it.age >
我使用spring使用包含{comment_count}的url发出Facebook图形api请求。
但是,得到这个例外
java.lang.IllegalArgumentException: Not enough variable values available to expand reactive spring
代码片段:
import org.springframework.stereotype.Component;
import org.springframework.web.reactive.function.client.WebClient;
import reactor.co
上下文:我成功地创建了一个带有"org.springframework.data.domain.Pageable“参数的方法,旨在返回一个Flux。我只找到文章,指导返回一个Flux,而不是Mono,当涉及到可分页时。到目前一切尚好。
个人知识/假设:如果只是一个页面,那么返回Flux是没有意义的。在另一个世界中,它不是返回多个结果流。好吧,如果我可以要求从第2页到第10页的100页,我会看到一些禁止使用Mono的观点。据我所知,retrieveAllPaged bellow的真实事件要么是0事件,要么是1(永远不会大于1)。
下面是使用Flux return的方法:
public i
我正在为集成测试和普通REST调用之间的行为不一致性而挣扎。
让我解释一下:我的生产代码中有一个bug,当我从rest客户机(例如邮递员)执行POST时,会导致一个:POST异常。
我试图重用已经订阅的Mono。见下文:
public Mono<ServerResponse> createUser(ServerRequest serverRequest) {
Mono<User> userMono = serverRequest.bodyToMono(User.class);//Can only be subscribed to once!!
retur
在运行Spring引导应用程序期间,我得到以下错误:
尝试调用方法org.springframework.web.reactive.function.client.WebClient.builder()Lorg/springframework/web/reactive/function/client/WebClient$Builder; but it does not exist. Its class, org.springframework.web.reactive.function.client.WebClient, is available from the following loca
我正在使用Spring Data couchbase reactive来执行读、写、更新操作。现在我需要一个属性,比如Couchbase中的原子计数器。我读到Spring reactive还不支持这个(可能是现在)特性,所以我想得到关于如何去做的指导。 我已经看过了other ticket:Atomic counters in Spring with Couchbase中提供的解决方案,但这不是阻塞调用,所以我想知道是否可以使用类似的方法来进行非阻塞调用。 我可以使用Couchbase的reactive client来实现这一点,但这意味着我需要将Couchbase的Reactive cli
我正在尝试Spring支持,我希望在Spring应用程序中实现以下简单的DAO模式(使用Spring反应特性,这是由Spring网站生成的):
@Document
data class Person(val age: Int, val name: String)
abstract class AbstractDAO<T>(private val clazz: Class<T>, private val reactiveMongoTemplate: ReactiveMongoTemplate) {
fun create(t: Mono<T>) = r
我正在尝试在非spring应用程序的DefaultExchangeStrategiesBuilder.DEFAULT_EXCHANGE_STRATEGIES应用程序中使用 WebClient wc = WebClient.create();,但它看起来像是返回null。
causing error:
java.lang.NoClassDefFoundError: Could not initialize class org.springframework.web.reactive.function.client.DefaultExchangeStrategiesBuilder
at o
我想使用quarkus-resteasy-reactive来利用@ServerExceptionMapper的新错误处理,但我也希望使用quarkus-spring-data-rest来使用@RepositoryRestResource注释。
问题是quarkus-spring-data-rest附带了quarkus-resteasy包,这与quarkus-resteasy-reactive冲突,因为它们是,从而导致以下错误:
Multiple matching properties for name "security.jaxrs.deny-unannotated-endpoints
我使用OpenAPI生成器(gradle的实现)在Java中为我的api生成控制器,但是如果我的端点什么也不返回--OpenAPI生成器生成返回类型为对象类型为Void,但不为void。
我希望:
public void createPet() {}
但得到了:
public Void createPet() { return null; }
我试着定制胡子模板,但没有任何选择。gradle任务的配置中的ConfigOptions也没有选项。
当前的.mustache api模板:
/**
* NOTE: This class is auto generated by OpenAPI Gene
我正在使用链接中的Spring Reactive示例:。我正在使用maven开发相同的项目,但我不会看到下面的maven依赖项。我应该用什么?
compile('org.springframework.boot:spring-boot-starter-data-mongodb-reactive')
我得到以下错误:
[ERROR] The build could not read 1 project -> [Help 1]
org.apache.maven.project.ProjectBuildingException: Some problems were enco