[ 
https://issues.apache.org/jira/browse/HTTPCLIENT-783?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Kalnichevski resolved HTTPCLIENT-783.
------------------------------------------

    Resolution: Invalid

One _must_ use a relative request URI when providing a custom HostConfiguration 
object. Alternatively one could use HostConfigurationWithStickyProtocol from 
the contrib package as a workaround.

http://svn.apache.org/repos/asf/httpcomponents/oac.hc3x/trunk/src/contrib/org/apache/commons/httpclient/contrib/ssl/HostConfigurationWithStickyProtocol.java

Oleg

> PostMethod constructor argument "uri" fails when uri is absolute, and a 
> custom protocol is set via getHostConfiguration().setHost()
> -----------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HTTPCLIENT-783
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-783
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>          Components: HttpClient
>    Affects Versions: 3.1 Final
>         Environment: Windows XP, Java 1.6
>            Reporter: Robert Christian
>            Priority: Minor
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> 1.  Follow SSL configuration as prescribed in the HTTPClient SSL 
> documentation at http://hc.apache.org/httpclient-3.x/sslguide.html.
> 2.  Use a PostMethod instead of Get.
> 3.  Change the URL to absolute.  The JavaDocs say the URI can be absolute or 
> relative.  Construction with an absolute URI works when there is no custom 
> protocol/socket factory.
> See that *only* when there is an absolute path, the default cacerts is used 
> instead of the specified trust store.  This is because the HTTPClient 
> framework will completely bypass the custom protocol factory impl when there 
> is an absolute URL.  If the server's certificate is not in the cacerts file, 
> an exception is thrown:  
> sun.security.provider.certpath.SunCertPathBuilderException: unable to find 
> valid certification path to requested target.
> Whether this is a bug is sort of a grey area, but it is a source of 
> confusion.  Would be a good idea to at least note this in the documentation.
> Stack trace:
> Caused by: sun.security.validator.ValidatorException: PKIX path building 
> failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to 
> find valid certification path to requested target
>       at sun.security.validator.PKIXValidator.doBuild(Unknown Source)
>       at sun.security.validator.PKIXValidator.engineValidate(Unknown Source)
>       at sun.security.validator.Validator.validate(Unknown Source)
>       at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.validate(Unknown 
> Source)
>       at 
> com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown 
> Source)
>       at 
> com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown 
> Source)
>       ... 18 more
> Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable 
> to find valid certification path to requested target
>       at 
> sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source)
>       at java.security.cert.CertPathBuilder.build(Unknown Source)
>       ... 24 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to