Java Jersey 2/JAX-RS自定义协议/端口
我们正在考虑从Jersey 1/HttpClient 3.1升级到Jersey 2/HttpClient 4.5.12 我们对第三方软件产品进行REST调用时使用了一个唯一的协议和端口(在端口8112上使用HTTPS,而不是标准的HTTPS/443)。因此,一个示例URL是Java Jersey 2/JAX-RS自定义协议/端口,java,jersey,jax-rs,apache-httpclient-4.x,apache-commons-httpclient,Java,Jersey,Jax Rs,Apache Httpclient 4.x,Apache Commons Httpclient,我们正在考虑从Jersey 1/HttpClient 3.1升级到Jersey 2/HttpClient 4.5.12 我们对第三方软件产品进行REST调用时使用了一个唯一的协议和端口(在端口8112上使用HTTPS,而不是标准的HTTPS/443)。因此,一个示例URL是秒上的HTTPS流量-http://myserver:8112/person/1 有人知道如何设置Jersey 2/HttpClient 4.x以使用自定义协议和自定义端口吗? 在我们为Jersey 1/HttpClient
秒上的HTTPS流量-http://myserver:8112/person/1
有人知道如何设置Jersey 2/HttpClient 4.x以使用自定义协议和自定义端口吗?
在我们为Jersey 1/HttpClient 3.1编写以下代码之前:
final Protocol protocol = new Protocol("sec-http",
(ProtocolSocketFactory) new SocketFactory(this.sslContext), 8112);
Protocol.registerProtocol(protocolScheme, protocol);
就我个人而言,我无法在Jersey 2/HttpClient 4.5.12中实现这一点。协议
类已消失
以下是我尝试过的:
LayeredConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(this.sslContext);
Registry<ConnectionSocketFactory> r = RegistryBuilder.<ConnectionSocketFactory>create()
.register("sec-http", sslsf) // how do I specify a custom port?!
.build();
PoolingHttpClientConnectionManager httpClientConnectionManager = new PoolingHttpClientConnectionManager(r);
ClientConfig clientConfig = new ClientConfig();
clientConfig.connectorProvider(new ApacheConnectorProvider());
clientConfig.property(ApacheClientProperties.CONNECTION_MANAGER, httpClientConnectionManager);
clientConfig.property(ApacheClientProperties.DISABLE_COOKIES, Boolean.FALSE);
clientConfig.register(new JacksonFeature());
Client client = ClientBuilder.newBuilder()
.withConfig(clientConfig)
.build();
LayeredConnectionSocketFactory sslsf=新的SSLConnectionSocketFactory(this.sslContext);
注册表r=RegistryBuilder.create()
.register(“sec http”,sslsf)//如何指定自定义端口?!
.build();
PoolightPClientConnectionManager httpClientConnectionManager=新的PoolightPClientConnectionManager(r);
ClientConfig ClientConfig=new ClientConfig();
connectorProvider(新的ApacheConnectorProvider());
clientConfig.property(ApacheClientProperties.CONNECTION_管理器,httpClientConnectionManager);
属性(ApacheClientProperties.DISABLE_COOKIES,Boolean.FALSE);
注册(新JacksonFeature());
Client Client=ClientBuilder.newBuilder()
.withConfig(客户端配置)
.build();