You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Bronislav Gabrhelík (JIRA)" <ji...@apache.org> on 2013/11/05 15:29:19 UTC

[jira] [Created] (HTTPCLIENT-1431) The HTTPClient 4.3 doesn't accept the SocketFactory based on the LayeredSchemeSocketFactory when using HTTP proxy

Bronislav Gabrhelík created HTTPCLIENT-1431:
-----------------------------------------------

             Summary: The HTTPClient 4.3 doesn't accept the SocketFactory based on the LayeredSchemeSocketFactory when using HTTP proxy
                 Key: HTTPCLIENT-1431
                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1431
             Project: HttpComponents HttpClient
          Issue Type: Bug
    Affects Versions: 4.3 Final
         Environment: HttpClient 4.3, squid proxy with basic authentication, Xythos WebDAV server
            Reporter: Bronislav Gabrhelík


We upgraded to 4.3 some time ago and our QA has found the problem for following configuration:

# The HTTPS protocol used. The authentication scheme is not important.
# The HTTP proxy used with Basic authentication.
Following exception is thrown

Caused by: java.lang.IllegalStateException: Socket factory must implement SchemeLayeredSocketFactory
	at org.apache.http.util.Asserts.check(Asserts.java:34)
	at org.apache.http.impl.conn.DefaultClientConnectionOperator.updateSecureConnection(DefaultClientConnectionOperator.java:214)
	at org.apache.http.impl.conn.AbstractPoolEntry.layerProtocol(AbstractPoolEntry.java:243)
	at org.apache.http.impl.conn.AbstractPooledConnAdapter.layerProtocol(AbstractPooledConnAdapter.java:152)
	at org.apache.http.impl.client.DefaultRequestDirector.establishRoute(DefaultRequestDirector.java:800)
	at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:614)
	at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:445)
	at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:863)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)


We register own SSL Socket implementation for HTTPClient. The SSL Socket Factory implements LayeredSchemeSocketFactory interface. I understand that the LayeredSchemeSocketFactory interface has been deprecated, however my understanding is that the deprecated interfaces should continue to work until this interface is definitely removed. 




--
This message was sent by Atlassian JIRA
(v6.1#6144)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org