0

我正在使用 的子对象org.apache.commons.pool.impl.GenericObjectPool来提供与 Web 服务的连接(的子对象org.apache.axis2.client.Stub)。

如何设置池,使会话过期的连接将自动从池中删除?方法borrowConnection()必须始终返回有效会话。

我是否必须在池对象中使用某些参数,如果过期将删除连接或为自动删除连接设置一些超时,或者是否有任何方法可以检查会话是否在服务器端过期?据我所知,我的网络服务没有提供廉价的方法来检查会话的有效性......

我的代码:

SDConnection sd
    = (SDConnection)connector.getConnectionManager().borrowConnection();

sd.someServiceMethod();

通话someServiceMethod()没问题,但经过一段时间不活动后,我得到:

AxisFault:SID 超时

4

1 回答 1

2

你研究validateObject方法了吗?您可以将条件放在这里并返回 afalse以将池内的对象标记为无效。

于 2011-11-11T16:20:21.670 回答