Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring远程处理SimpleHttpInvokerRequestExecutor在请求不应';T_Java_Spring_Http_Spring Remoting - Fatal编程技术网

Java Spring远程处理SimpleHttpInvokerRequestExecutor在请求不应';T

Java Spring远程处理SimpleHttpInvokerRequestExecutor在请求不应';T,java,spring,http,spring-remoting,Java,Spring,Http,Spring Remoting,我正在调查一个相当奇怪的问题。我正在处理的项目使用SpringRemoting通过http调用方法。根据我目前收集的信息,发生了以下情况: 我的客户端代码执行对服务器的请求 服务器开始处理请求,但速度较慢 25-30秒后,服务器收到一个新请求 第二个请求完成后,客户端继续处理 一段时间后,第一个请求完成,但客户端不再关心 由于我的客户机代码只执行对SpringRemoting客户机的一个请求,并且客户机在它接收到的第二次调用完成后继续运行,因此我只能断定这发生在SpringRemoting客户机

我正在调查一个相当奇怪的问题。我正在处理的项目使用SpringRemoting通过http调用方法。根据我目前收集的信息,发生了以下情况:

  • 我的客户端代码执行对服务器的请求
  • 服务器开始处理请求,但速度较慢
  • 25-30秒后,服务器收到一个新请求
  • 第二个请求完成后,客户端继续处理
  • 一段时间后,第一个请求完成,但客户端不再关心
  • 由于我的客户机代码只执行对SpringRemoting客户机的一个请求,并且客户机在它接收到的第二次调用完成后继续运行,因此我只能断定这发生在SpringRemoting客户机的某个地方

    客户端使用
    AbstractHttpInvokerRequestExecutor
    进行实际的http调用,而这反过来又使用
    SimpleHttpInvokerRequestExecutor
    进行请求。但是,据我所知,这没有重试请求的机制。所以现在我被卡住了


    有人能想到是什么导致这种行为吗?(我试图保持问题的清晰,但如果需要的话,我会提供更多细节。)

    只是一个给你一些方向的想法,不一定是一个解决方案。使用第三方Http客户机(不是Spring的客户机)查看它是否更改了行为。这可能有助于您了解是否是
    SimpleHttpInvokerRequestExecutor
    犯了“重审罪”或其他罪行。下面是一个非常简单的3d party HttpClient:由MgntUtils开放源代码库(由我编写)提供。使用非常简单。看一看。库本身作为和on提供(包括源代码和Javadoc)。总之,您的代码可能如下所示:

    private static void testHttpClient() {
        HttpClient client = new HttpClient();
        client.setContentType("application/json");
        String content = null;
        try {
            content = client.sendHttpRequest("http://www.google.com/", HttpMethod.GET);
            //content holds the response. Do your logic here
        } catch (IOException e) {
            //Error Handling is here
            content = TextUtils.getStacktrace(e, false);
        }
    }