java axis2 调用webservice 怎么捕获超时异常(即超时了让它停下来,不要报错)
思路是:用睡眠20秒的方式,Thread.currentThread().sleep(20000),如果20秒后没有给你返回信息(休眠结束后判断call==null),则...
思路是:用睡眠20秒的方式,Thread.currentThread().sleep(20000),如果20秒后没有给你返回信息(休眠结束后判断call==null),则停止等待。这部分代码怎么写啊?希望懂的人帮我一下(答案有帮助的话,再加分)
展开
展开全部
超时分两种,一种是客户端请求连接超时,一种是服务端处理时间过长,客户端等待超时。 看你要捕获哪一种?
第一种你可以捕获ConnectTimeOutException;
第二种你可以在客户端设置超时时间,比如发起请求之后服务端5秒还未返回处理后的结果就认为超时;
在异常处理中执行正常业务逻辑即可。
第一种你可以捕获ConnectTimeOutException;
第二种你可以在客户端设置超时时间,比如发起请求之后服务端5秒还未返回处理后的结果就认为超时;
在异常处理中执行正常业务逻辑即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
call.setTimeout(1000*20); //设置超时时间 20秒
调用接口时将代码Try catch起来,异常信息在catch块中不输出,继续执行后面的代码就行了
调用接口时将代码Try catch起来,异常信息在catch块中不输出,继续执行后面的代码就行了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
axis2.xml 配置下,timeout时不做任何操作就行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询