java axis2 调用webservice 怎么捕获超时异常(即超时了让它停下来,不要报错)
思路是:用睡眠20秒的方式,Thread.currentThread().sleep(20000),如果20秒后没有给你返回信息(休眠结束后判断call==null),则...
思路是:用睡眠20秒的方式,Thread.currentThread().sleep(20000),
如果20秒后没有给你返回信息(休眠结束后判断call==null),则停止等待。这部分代码怎么写啊?希望懂的人帮我一下(答案有帮助的话,再加分) 展开
如果20秒后没有给你返回信息(休眠结束后判断call==null),则停止等待。这部分代码怎么写啊?希望懂的人帮我一下(答案有帮助的话,再加分) 展开
2个回答
展开全部
有个思路:
可以在执行 Thread.currentThread().sleep(20000)代码前 获取系统当前时间或者获取当前网络时间date1,在执行Thread.currentThread().sleep(20000)代码后在获取一下时间 date2 将时间转为long类型即毫秒 进行判断 ,如果后一个时间 if(date2 - date1 <= 20秒){执行逻辑操作 } else{ //可停止等待}
仅供参考,未测试。没用到 捕获异常
可以在执行 Thread.currentThread().sleep(20000)代码前 获取系统当前时间或者获取当前网络时间date1,在执行Thread.currentThread().sleep(20000)代码后在获取一下时间 date2 将时间转为long类型即毫秒 进行判断 ,如果后一个时间 if(date2 - date1 <= 20秒){执行逻辑操作 } else{ //可停止等待}
仅供参考,未测试。没用到 捕获异常
2013-05-13
展开全部
在axis2.xml可以设置connection超时时间,超时后会抛出AxisFault,直接捕获这个异常就好了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询