开发者

AXIS2 How to set connection retry?

开发者 https://www.devze.com 2022-12-19 03:11 出处:网络
It seems that the Axis admin client org.apache.axis2.client.ServiceClient is issuing org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry() an开发者_运维百科d

It seems that the Axis admin client org.apache.axis2.client.ServiceClient is issuing org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry() an开发者_运维百科d the retry is like 3 times by default. Is there a way to set to not do retries?

My code:

        ServiceClient client = new ServiceClient();
        Options opts = new Options();
        opts.setTo(new EndpointReference(strWebServiceUrl));
        opts.setAction(strNameOfMethodToInvoke);
        opts.setTimeOutInMilliSeconds(timeOut);
        client.setOptions(opts);
        OMElement res = client.sendReceive(createRequest());
        return (res.toString());

The code now is

        ServiceClient client = new ServiceClient();
        Options opts = new Options();
        opts.setTo(new EndpointReference(strWebServiceUrl));
        opts.setAction("urn:" + strNameOfMethodToInvoke);
        opts.setTimeOutInMilliSeconds(timeOut);

        HttpMethodParams methodParams = new HttpMethodParams();
        DefaultHttpMethodRetryHandler retryHandler = new DefaultHttpMethodRetryHandler(0, false);
        methodParams.setParameter(HttpMethodParams.RETRY_HANDLER, retryHandler);
        opts.setProperty(HTTPConstants.HTTP_METHOD_PARAMS, methodParams);

        client.setOptions(opts);
        OMElement res = client.sendReceive(createRequest());
        return (res.toString());


You can set it using the HttpMethodParams.RETRY_HANDLER parameter. In you case, for example:

HttpMethodParams methodParams = new HttpMethodParams();
DefaultHttpMethodRetryHandler retryHandler = new DefaultHttpMethodRetryHandler(0, false);
methodParams.setParameter(HttpMethodParams.RETRY_HANDLER, retryHandler);
opts.setProperty(HTTPConstants.HTTP_METHOD_PARAMS, methodParams);

There is a thread on the wso2.org website.

0

精彩评论

暂无评论...
验证码 换一张
取 消