[
https://issues.apache.org/jira/browse/CXF-4525?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13465884#comment-13465884
]
Shaun Elliott commented on CXF-4525:
------------------------------------
It looks pretty close to me, however, I'm not seeing how you can get at the
DefaultHttpAsyncClient object from AsyncHTTPConduitFactory. I do see that you
added a public create method. Are you intending the factory to be subclassed in
order to alter the DefaultHttpAsyncClient? If that is your intent, then I would
assume that one would have to override this as well:
{code}
public AsyncHTTPConduitFactory getAsyncHTTPConduitFactory() {
return factory;
}
{code}
In addition, you'd then have to set the subclassed AsyncHTTPConduit on the bus,
right?
Here is what I am trying to do, I think if you add a getter to the client it
would work:
{code}
Client client = ClientProxy.getClient( proxy );
HTTPConduit http = (HTTPConduit)client.getConduit();
if ( http instanceof AsyncHTTPConduit ) {
AsyncHTTPConduit asyncHTTPConduit =
(AsyncHTTPConduit)http;
DefaultHttpAsyncClient defaultHttpAsyncClient =
asyncHTTPConduit.getAsyncHTTPConduitFactory().getDefaultHttpAsyncClient();
defaultHttpAsyncClient.getCredentialsProvider()
.setCredentials( AuthScope.ANY, new
NTCredentials( _userName, _password, "", _domain ) );
}
{code}
This would effectively allow CXF to do NTLM authentication via the
DefaultHttpAsyncClient.
> expose http client
> ------------------
>
> Key: CXF-4525
> URL: https://issues.apache.org/jira/browse/CXF-4525
> Project: CXF
> Issue Type: Improvement
> Components: Transports
> Affects Versions: 2.7.0
> Reporter: Shaun Elliott
> Assignee: Daniel Kulp
> Fix For: 2.7.0
>
>
> The class: CXFAsyncRequester hides the DefaultHttpAsyncClient, thus
> preventing interaction from outside classes. One use case would be to
> leverage the embedded DefaultHttpAsyncClient to do NTLM authentication, which
> is currently not possible with CXF.
> AsyncHTTPConduit will also need a getter on the factory field.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira