在webservice的一次调用中能循环调用接口方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在webservice的一次调用中能循环调用接口方法相关的知识,希望对你有一定的参考价值。

调用远程的一个webservice 我需要传N条数据 我能在方法里面循环调用webservice接口的方法么 还是我必须循环外面这个调用方法
Exception in thread "main" org.apache.cxf.binding.soap.SoapFault: 服务器无法处理请求。 ---> 超时时间已到。超时时间已到,但是尚未从池中获取连接。出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小。
at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:70)

参考技术A 你循环调的速度要慢的太多了。。。实际中肯定不会让这么干的。最好把几条数据拼成串。到里面再拆分。当然,这个的前提是你们能该接口里的逻辑,如果不能改,这系统肯定要慢死

请教个关于多线程调用webservice接口是不是会相互影响的问题

对webservice接口不太了解,请教个问题:IT数据库开放了一个webservice接口,根据输入的查询信息查询数据库后返回查询结果,一次查询大概需要十多秒。webservice服务名称是MESWebservice,访问过程中先初始化一个实例,假设命名为temp:MESWebservice.commservice temp = new MESWebservice.commservice();随后开线程服务ThreadService,里面使用temp.process()函数处理数据,线程里面查询返回结果大概需要十多秒。想问个问题:如果同一时间内有2个以上线程同时使用temp.process()处理数据,各个线程之间会不会相互影响。之所以问,是看论坛上说temp是个实例,实例的话如果像变量一样那么线程之间会有相互影响。如果这个实例是方法一样的东西那就不会相互影响,目前不太确定论坛上说temp是个实例到底属于哪一种。还请知道的指导下,谢谢。

会可能相互影响,因为是多线程操作同一个对象(实例).如果是每个线程建1个MESWebservice.commservice实例,那影响基本在web server端(如果server有共用对象,如数据库). 参考技术A 如果你担心有影响,就要想办法多写一两个(可执行的)测试用例来!否则,不必杞人忧天。编程以测试为准,而不是以理论为准。另外,不能说什么“使用实例就有影响、调用方法就没有影响”。这两个概念根本看不出“有还是没有”影响,所以是不置可否的。实际上,你去想想“自己能不能写出什么测试用例来获得bug”,这就是让你去稍微深入一点去想想“到底怎样才叫做有影响”。编程需要深入一点、主动一点,既然我们说不出什么“影响”来那么也不用怕,只要你有足够的测试就有勇气用你自己的方法继续下去。 参考技术B 设计一个测试用例,就是要想到“我这个测试可以深入到代码中的哪一行,我这个负载压力可以压到代码中的哪一行”,也就是有点深度。当你经常写测试,就好像你自己动手写的那样,并且集成在一起让它们随时可以自动反复去跑(例如你中午吃饭的时候就可以启动测试,然后回来时再来处理发现的第一个问题),那么技术才真正提高了,不用活在“还是不确定”的阴影里了。 参考技术C Wevservice接口是MES系统那边的,我这边只是客户端,没法控制那边,所以只能用他们给的接口 参考技术D 感觉WebServices还不如写个通用的Socket查询服务程序来的方便。

以上是关于在webservice的一次调用中能循环调用接口方法的主要内容,如果未能解决你的问题,请参考以下文章

webservice接口如何获取网站数据

怎样使用VC6调用webservice的接口

动态调用WebService接口的几种方式

请教个关于多线程调用webservice接口是不是会相互影响的问题

java 调用webservice接口的时候 需要先执行一个签到的方法,之后才能调用其他接口方法

java 调用远程接口 webservices 原理和流程