我有一个客户端与服务器进行通信,该服务器在等待四秒钟后返回一个响应(通过servlet),然后继续处理。延迟接收HttpResponse
问题是服务器响应(200 OK)在所有处理结束时返回,而不是在4秒暂停后返回。我不明白,为什么
这里是我的代码
try {
mimeTraitement.getMime(client);
mimeTraitement.analyseMime(xmlDir);
if (mimeTraitement.checkMime()) {
System.out.println("Acquittement de la requete dans " + BeanParametrageTimers.getTimeWaitResponseOkToRequest()/1000+ " secondes");
synchronized(response)
{
try {
response.wait(BeanParametrageTimers.getTimeWaitResponseOkToRequest());
} catch (InterruptedException e1) {
e1.printStackTrace();
}
}
writer.write("200 OK (MimeMultipart valide)");// this line is displayed after the processing of postXml.sendXml() on my java console
PostXml postXml = new PostXml(xmlDir,mimeTraitement.getGetUrl());
System.out.println("Envoi du fichier xml dans " + BeanParametrageTimers.getTimeWaitSendXmlToRequest()/1000 + " secondes");
Thread.sleep(BeanParametrageTimers.getTimeWaitSendXmlToRequest());
postXml.sendXml();
} else
writer.write("400 POK (MimeMultipart non valide)");
} catch (MessagingException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
片段非常感谢您
谢谢,所以它是一个缓冲区大小问题。我怎样才能增加它(我不只是servlet)。谢谢 – ulquiorra 2012-07-16 14:35:28