如何使用ExecutorService调用webservice

时间:2016-01-20 19:20:35

标签: java multithreading concurrency executorservice

我想知道在java应用程序中使用ExecutorService使用Web服务的正确方法,我认为webservice调用应该是并行和队列,但我不知道如何操作。

3 个答案:

答案 0 :(得分:0)

ExecutorService与webservices无关。 ExecutorService仅调度任务并执行它们。在您的情况下,您提交的任务将消耗某个Web服务,但它可能就像做一些计算或其他事情。与评论中建议的一样,您可以使用java.net.URL,javax.xml.ws.Service或任何其他API。

答案 1 :(得分:0)

假设您有ExecutorService:

final ExecutorService executorService = constructAnAppropriateExecutorService();

做这样的事情?

Future<Result> future = executorService.submit(new Callable<>() {
    @Override
    Result call() {
        return performSynchronousWebServiceCall(...);
    }
});
doSomethingElseForAWhile(...);
Result result = future.get();

答案 2 :(得分:0)

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