gpt4 book ai didi

Quarkus RestClient close()

转载 作者:行者123 更新时间:2023-12-04 12:36:36 31 4
gpt4 key购买 nike

我想知道通过 CDI 注入(inject) RestClient 时 quarkus 的行为是什么。
在下面的例子中它会自动关闭客户端吗?

@Produces(APPLICATION_JSON)
@Consumes(APPLICATION_JSON)
@RegisterRestClient
@RegisterClientHeaders
public interface CarClient {
@GET
@Path("/cars/{id}")
@Timeout(4500L)
Car getCar(@PathParam("id") String id);
}

@Inject
@RestClient
CarClient carClient;
或者 Quarkus 要求它像下面的例子一样扩展 AutoCloseable ?
@Produces(APPLICATION_JSON)
@Consumes(APPLICATION_JSON)
@RegisterRestClient
@RegisterClientHeaders
public interface CarClient extends AutoCloseable {
@GET
@Path("/cars/{id}")
@Timeout(4500L)
Car getCar(@PathParam("id") String id);
}

@Inject
@RestClient
CarClient carClient;
我们收到了一些警告,我们需要确定一切是否都已关闭。
WARN: RESTEASY004687: Closing a class org.jboss.resteasy.client.jaxrs.engines.ApacheHttpClient43Engine instance for you. Please close clients yourself.
PS:建议 quarkus 团队在警告中显示有问题的客户端:)

最佳答案

Quarkus 团队表示需要在 RestClient 接口(interface)中扩展 AutoCloseable 以便自动关闭连接。

关于Quarkus RestClient close(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64137112/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com