在设置axis1客户端连接超时时限时,首先我们要生成客户端,下面的链接是通过wsdl生成客户端的介绍,大家有兴趣的可以去看看,这里不再赘述!
http://blog.csdn.net/zuiaibenpao/article/details/52785784
上面介绍的axis1客户端生成的方法中,我使用的是以XFire写的服务端,生成好服务端我们会得到这么几个类:
这些是服务类,当然还有一些实体类,这里就不展示了…….
生成了客户端,下面我们来设置连接超时:
在xxxxServicePortType这个接口中,有一个调用服务的接口,接口内容如下图所示:
这里的接口方法在自动生成时,只有一个实体类参数,其实就是我们的请求参数,在这个接口中我们加入一个int returnTime参数,这个参数就是我们要设置连接时限,设置后如下图所示:
在接口中设置完之后,我们就要去接口实现类中再就行相应的改动,接口实现类是:xxxxServiceHttpBindingStub,在这个类中,找到上面服务接口中的方法:loadQuesList(),找到这个方法后,我想你应该知道接下来我们下一步是什么吧?我们将int returnTime这个参数添加到这个方法的参数列表中,另外,这个方法在生成时是protected修饰的,为了使用方便,我给改成了public修饰,如下图所示:
如上图所示,添加完时限参数后,我们在“2”的位置createCall()这个方法中也加上returnTime这个参数,接下来我们Ctrl+F在这个类中查找createCall()这个方法,如下图所示:
同样的,我们在createCall()这个方法中加入int returnTime这个参数,然后在“2”的位置将代码中原有的关于returnTime的代码注释掉,然后添加自己的代码如“3”所示,至此我们设置客户端连接超时的过程就完成了,大家可以自己试试看!!!!
本文介绍如何在Axis1客户端中设置连接超时。通过修改接口及其实现类,添加自定义的超时参数,实现对客户端连接时间的精确控制。

2万+

被折叠的 条评论
为什么被折叠?



