我有一個客戶端與服務器進行通信,該服務器在等待四秒鐘後返回一個響應(通過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