2.21. 扩展 RESTEasy 支持异步请求处理和 Reactive Return 类型
重要
扩展 RESTEasy 支持仅作为技术预览提供。技术预览功能不包括在红帽生产服务级别协议(SLA)中,且其功能可能并不完善。因此,红帽不建议在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
如需有关技术预览功能支持范围的信息,请参阅红帽客户门户网站中的技术预览功能支持范围。
2.21.1. 可插拔响应类型
JAX-RS 2.1 可以扩展以支持各种被动库。RESTEasy 的可选模块 resteasy-rxjava2
支持以下被动类型:
-
io.reactivex.Single
:与CompletionStage
类似,因为它最多有一个潜在值。 -
io.reactivex.Flowable
:Implementsio.reactivex.Publisher
. -
io.reactivex.Observable
:与 Flowable
类似,只是不支持反压缩,订阅者可以通过调用Subscription.request()
来控制从生产者收到的负载。
如果您导入 resteasy-rxjava2
,您可以从服务器端的资源方法返回这些被动类型,并在客户端端接收它们。
resteasy-rxjava2
模块支持以下三个类分别访问客户端一侧的 Singles、Oservables 和 Flowables:
-
org.jboss.resteasy.rxjava2.SingleRxInvoker
-
org.jboss.resteasy.rxjava2.FlowableRxInvoker
-
org.jboss.resteasy.rxjava2.ObservableRxInvoker