我怎样才能在下面使用带有Apache httpclient的jersey-client?

时间:2015-08-13 18:12:13

标签: java jersey-2.0 jersey-client

我正在为项目使用jersey-client,并希望Client使用来自Apache httpclient librabry的HTTP客户端。

我以前认为这是可能的。

我使用泽西2.20。

1 个答案:

答案 0 :(得分:11)

使用ApacheConnectorProvider。将实例传递给ClientConfig.connectorProvider()以获取将使用Apache HTTP客户端的ClientConfig实例。

使用以下依赖项:

<dependency>
        <groupId>org.glassfish.jersey.connectors</groupId>
        <artifactId>jersey-apache-connector</artifactId>
        <version>2.20</version>
</dependency>

这是一个有效的例子:

import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;

import org.glassfish.jersey.apache.connector.ApacheConnectorProvider;
import org.glassfish.jersey.client.ClientConfig;


public class Test {
    @org.junit.Test
    public void test() {
        ClientConfig cc = new ClientConfig().connectorProvider(new ApacheConnectorProvider());
        Client client = ClientBuilder.newClient(cc);
        System.out.println(client.target("http://example.com/").request().get().getStatus());
    }
}