HttpAsyncClient httpClient ; in debuger it is
org.apache.http.impl.nio.client.DefaultHttpAsyncClient, (so looks good)
httpClient.execute(HttpRequestBase, callback);

httpRequestBase was created as 
HttpRequestBase httpReq = null;
        httpReq = doPost ? new HttpPost(targetUrl) : new HttpGet(targetUrl);

if (doPost) {
    ((HttpPost) httpReq).setEntity(new UrlEncodedFormEntity(nvps));
}

later it results in executing non async code in:

    public BasicAsyncRequestProducer(final HttpHost target, final
HttpRequest request) {
        if (target == null) {
            throw new IllegalArgumentException("HTTP host may not be null");
        }
        if (request == null) {
            throw new IllegalArgumentException("HTTP request may not be
null");
        }
        this.target = target;
        this.request = request;
        if (request instanceof HttpEntityEnclosingRequest) {
            HttpEntity entity = ((HttpEntityEnclosingRequest)
request).getEntity();
            if (entity != null) {
                if (entity instanceof HttpAsyncContentProducer) {
                    this.producer = (HttpAsyncContentProducer) entity;  //
------> this is executed
                } else {
                    this.producer = new EntityAsyncContentProducer(entity);
// this is not executed, how to make it execute??
                }
            } else {
                this.producer = null;
            }
        } else {
            this.producer = null;
        }
    }

How should I create HttpRequestBase to later trigger executing async io ?

Now requests are send 2 by 2 - when first 2 sent requests get response, next
two are sent, other requests are possibly queued, sending isn't blocking,
but requests aren't really sent parallelly but they seem to be queued.

How should I fix it ?



--
View this message in context: 
http://cxf.547215.n5.nabble.com/how-to-create-HttpEntityEnclosingRequest-with-HttpAsyncContentProducer-entity-tp5731958.html
Sent from the cxf-user mailing list archive at Nabble.com.

Reply via email to