我有很長的HTTP請求(生成大型Excel文件 - 約60K記錄左右),需要5分鐘完成。帶有icefaces的輪子顯示連接已經死機,雖然文件已經準備好在服務器上,但是ICEFaces頁面已經死機,我必須刷新它並且無法獲取文件!我如何如何擴展超時試圖在web.xml中有以下,但它並沒有幫助:服務器連接終止與長期請求的ICEFaces
碼 - web.xml中:
.....
<context-param>
<param-name>blockingConnectionTimeout</param-name>
<param-value>600000</param-value>
</context-param>
<context-param>
<param-name>synchronousUpdate</param-name>
<param-value>false</param-value>
</context-param>
<context-param>
<param-name>connectionTimeout</param-name>
<param-value>600000</param-value>
</context-param>
<context-param>
<param-name>heartbeatRetries</param-name>
<param-value>20</param-value>
</context-param>
<context-param>
<param-name>heartbeatInterval</param-name>
<param-value>400000</param-value>
</context-param>
<context-param>
<param-name>heartbeatTimeout</param-name>
<param-value>2000000</param-value>
</context-param>
.....
任何想法?
感謝,
擔
是的,它是客戶端超時。如何做異步創建?能否請你提供僞代碼 – Tam 2009-07-10 16:50:58
1.創建一個ajax請求,用一個唯一的id進行excel文件處理。 2.將請求按鈕替換爲微調器圖標(或加載圖標)。如果您確定每次處理時間接近6分鐘,請添加一個倒數計時器(大約5.4分鐘...) 3.編寫一個servlet,它在文件處理成功時返回。 (id作爲參數) 4.讓開始處理的頁面每隔X秒調用一次給定ID的「check」servlet。如果結果成功,您可以提供指向顯示該文件的頁面的鏈接。 完成;)沒有更多的超時問題。 – 2009-07-11 15:50:50