提问者:小点点

如何在反应性微型飞行器中设置POJO验证


使用micronaut.io,如何设置反应性HTTP内容的POJO验证?它适用于同步情况,即:

@Post("/sync/{id}")
HttpResponse createSync(String id, @Body @Valid SomePojo pojo) {
    ...
}

但它在异步情况下不起作用:

@Post("/async/{id}")
Single<HttpResponse> createAsync(String id, @Body @Valid Single<SomePojo> pojoProducer) {
    ...
}

谢啦


共1个答案

匿名用户

我发现的解决方法是在控制器中声明一个触发验证的方法并以这种方式使用它:

    pojoProducer
        .map(pojo -> validate(pojo))
        ...

public <T> T validate(@Valid T t) {
    return t;
}

但如果框架能为我做就好了…