有谁知道像 Apache CXF 为 REST 提供的 Jersey 客户端代理实现

Omn*_*est 6 java rest cxf jersey

Apache CXF 项目为 REST 服务提供了一个基于代理的客户端实现。这看起来像:

Resource resource = JAXRSClientFactory.create( baseAddress, Resource.class )
Run Code Online (Sandbox Code Playgroud)

有人知道 Jersey 的类似实现吗?

我发现了一种使用@HyperMediaController注释的方法,但我想坚持使用 JSR-311 默认注释,例如@Path@Get...

有人有想法吗?

anr*_*nre 6

存在代理实现,但不幸的是,在2.22.1 版的Jersey 客户端 API 文档中甚至没有提到它(在Jersey 用户指南中都没有)。

我发现的是WebResourceFactory 的JavaDoc ,更好的是包 JavaDoc。这是 JavaDoc 中关于 WebResourceFactory 使用的片段:

Client client = ClientBuilder.newClient();
WebTarget target = client.target("http://localhost:8080/");
MyResourceIfc resource = WebResourceFactory.newResource(MyResourceIfc.class, target);
Run Code Online (Sandbox Code Playgroud)

在 Maven 中,您需要:

    <dependency>
        <groupId>org.glassfish.jersey.ext</groupId>
        <artifactId>jersey-proxy-client</artifactId>
        <version>2.22.1</version>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

此外

    <dependency>
        <groupId>org.glassfish.jersey.core</groupId>
        <artifactId>jersey-client</artifactId>
        <version>2.22.1</version>
    </dependency>
Run Code Online (Sandbox Code Playgroud)


Omn*_*est -1

我创建了一个自己的实现。因此,请参阅utils-apl 派生的 wiki 页面