Axis2 java web服务客户端超时后导致的问题
我有以下问题:Axis2 java web服务客户端超时后导致的问题,java,timeout,websphere,axis2,Java,Timeout,Websphere,Axis2,我有以下问题: -基于struts生成语音XML的java web应用程序部署在IBM WebSphere AS(WAS v.7.0.0.7)上。 应用程序使用Axis2 java-v.1.5-web服务客户端调用驻留在WebLogic上的web服务。 -我使用以下方法将超时设置为1000毫秒: stub.getServiceClient().getOptions().setTimeOutInMilliSeconds(1000); 应用程序访问web服务的最大次数约为每小时25000次-约7次
-基于struts生成语音XML的java web应用程序部署在IBM WebSphere AS(WAS v.7.0.0.7)上。
应用程序使用Axis2 java-v.1.5-web服务客户端调用驻留在WebLogic上的web服务。
-我使用以下方法将超时设置为1000毫秒:
stub.getServiceClient().getOptions().setTimeOutInMilliSeconds(1000);
应用程序访问web服务的最大次数约为每小时25000次-约7次并发调用。
将调用web服务的代码放入try-catch块后,我捕获异常并从方法返回。
由于计时器在打开连接或读取web服务调用结果时过期,平均每小时在WAS上引发大约200个异常 -通过记录
exception.getMessage();
我得到以下任一项,主要是第一项:
org.apache.commons.httpclient.ConnectTimeoutException: The host did not accept the connection within timeout of 60000 ms
或
问题是过了一段时间,应用程序服务器挂起,不响应传入的请求,或过了一段时间才响应,这使我们重新启动应用程序服务器,10天内大约发生了3次。
通过查看日志,我发现除了因超时过期而捕获的异常之外,没有其他内容,可能还有更多内容,但我还没有找到 在上述情况下,我应该考虑什么指导点吗?如果没有,我是否可以编写一个清理代码来释放连接?我们能否从上述描述中确定问题的根本原因?应用服务器的行为是否“正常”
很抱歉我提出了这么长的描述/问题,非常感谢您的帮助 据我所知,tineout错误从服务器报告为60000ms。巧合的是,这60秒是IBMIHS服务器的默认超时,因此您的问题很可能与此有关 假设您希望在服务器上处理请求的时间超过60秒,可以通过编辑/opt/WebSphere70/Plugin/config/SERVERNAME/Plugin-cfg.xml来增加此超时 查找ServerIOTimeout=“60”并将该值更改为大于60秒 [编辑] 您也可以通过管理控制台查看此设置 服务器>Web服务器>服务器名>插件属性
org.apache.axis2.AxisFault: Read timed out