Java 如何使用ExecutorService调用webservice

Java 如何使用ExecutorService调用webservice,java,multithreading,concurrency,executorservice,Java,Multithreading,Concurrency,Executorservice,我想知道在java应用程序中使用ExecutorService使用Web服务的正确方法,我认为Web服务调用应该是并行的和队列的,但我不知道怎么做。ExecutorService与Web服务无关。ExecutorService仅计划并执行任务。在您的情况下,您提交的任务将使用某个Web服务,但它可能是任何类似于进行计算或其他的事情。正如评论中建议的那样,您可以使用java.net.URL、javax.xml.ws.Service或任何其他API。假设您有一个ExecutorService: fi

我想知道在java应用程序中使用ExecutorService使用Web服务的正确方法,我认为Web服务调用应该是并行的和队列的,但我不知道怎么做。ExecutorService与Web服务无关。ExecutorService仅计划并执行任务。在您的情况下,您提交的任务将使用某个Web服务,但它可能是任何类似于进行计算或其他的事情。正如评论中建议的那样,您可以使用java.net.URL、javax.xml.ws.Service或任何其他API。

假设您有一个ExecutorService:

final ExecutorService executorService = constructAnAppropriateExecutorService();
你是这样做的吗

Future<Result> future = executorService.submit(new Callable<>() {
    @Override
    Result call() {
        return performSynchronousWebServiceCall(...);
    }
});
doSomethingElseForAWhile(...);
Result result = future.get();
Future-Future=executorService.submit(新的可调用(){
@凌驾
结果调用(){
返回performSynchronousWebServiceCall(…);
}
});
dosomethingelaseforawhile(…);
结果=future.get();

这绝对与ExecutorService无关。看起来Java无法访问WSDL。您是否能够使用curl或任何web浏览器访问给定的URL?
也许你应该考虑在一个单独的(更有意义的)问题上寻求帮助。

使用Java.NET.URL或JavaX.XML.WS服务。(您知道使用粗体并不会使您的问题比其他问题更重要,对吗?)是的,我知道,谢谢您的回答。ExecutorService与web服务无关,但您可以合法地使用后台线程“消费”web服务(可能速度较慢),您可以合法地使用
ExecutorService
来管理执行后台任务的工作线程。感谢您的回答,是的,我正在任务中使用webservice,但我有以下异常:javax.xml.ws.WebServiceException:无法访问位于的WSDL:。从打开流时失败:获取连接被拒绝:连接。所有这些过程都在同步方法中,但不起作用。