java axis2 调用webservice 怎么捕获超时异常(即超时了让它停下来,不要报错)

思路是:用睡眠20秒的方式,Thread.currentThread().sleep(20000),如果20秒后没有给你返回信息(休眠结束后判断call==null),则... 思路是:用睡眠20秒的方式,Thread.currentThread().sleep(20000),
如果20秒后没有给你返回信息(休眠结束后判断call==null),则停止等待。这部分代码怎么写啊?希望懂的人帮我一下(答案有帮助的话,再加分)
展开
 我来答
xty523643
2015-08-18 · 超过19用户采纳过TA的回答
知道答主
回答量:55
采纳率:100%
帮助的人:27.7万
展开全部
有个思路:
可以在执行 Thread.currentThread().sleep(20000)代码前 获取系统当前时间或者获取当前网络时间date1,在执行Thread.currentThread().sleep(20000)代码后在获取一下时间 date2 将时间转为long类型即毫秒 进行判断 ,如果后一个时间 if(date2 - date1 <= 20秒){执行逻辑操作 } else{ //可停止等待}

仅供参考,未测试。没用到 捕获异常
匿名用户
2013-05-13
展开全部
在axis2.xml可以设置connection超时时间,超时后会抛出AxisFault,直接捕获这个异常就好了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式