我用axis2 1.6.2版本访问axis2 1.4.1发布的服务器端,第三次连接超时失败

我用axis2 1.6.2版本访问axis2 1.4.1发布的服务器端,成功连接两次后,第三次连接超时失败,重启linux下的tomcat之后,还是只能访问两次,第三次失败。

viceClient serviceClient;
serviceClient = new RPCServiceClient();
Options options = serviceClient.getOptions();
options.setProperty(
org.apache.axis2.transport.http.HTTPConstants.CONNECTION_TIMEOUT,
new Integer(48000000));
EndpointReference targetEPR = new EndpointReference(webServiceURL);
options.setTo(targetEPR);
QName opGetAllLegalInfor = new QName(qName, "method");
Object[] opGetAllLegalInforArgs = new Object[] { "1"};
Class[] returnTypes = new Class[] { String.class };
Object[] response = serviceClient.invokeBlocking(
opGetAllLegalInfor, opGetAllLegalInforArgs, returnTypes);
String info = (String) response[0];
serviceClient.cleanupTransport();

这个是axis2的一个BUG,可以在调用的代码中加入 options.setManageSession(true);

options.setProperty(HTTPConstants.REUSE_HTTP_CLIENT,true);

serviceClient.cleanupTransport(); 这三行代码,具体可以参考博客axis2调用WebService出现Timeout waiting for connection