2013-12-20 20 views
0

我有一個表單創建一個帳戶和一個處理請求的servlet。如何在servlet運行時創建獲取信息的Ajax請求?

但是,創建此帳戶的過程是一個漫長的過程,我想創建類似狀態欄或進度條的東西。繼承人的POST:

$。員額( 「createAccount.jsp」 功能(數據){$( 「#狀態」)文本(數據); });

並且servlet會連續打印數據,如「創建x ...」,然後在servlet運行時創建「y」。有沒有辦法做到這一點,或者解決這個問題的另一種方法?

感謝

+1

你需要使用AJAX請求輪詢服務器。檢查[this](http://en.wikipedia.org/wiki/Comet_(編程)) –

+0

[This will help](http://techoctave.com/c7/posts/60-simple-long-polling-example -with的JavaScript和 - jquery的) –

回答

0

Http適用於request-response模型。您發送請求,然後服務器迴應。之後,服務器不知道你是誰?

這就像服務器是不知道你的地址的郵局。你 去它並得到你的信件。它不會送你回家的 提供信件。

如果你想從服務器,您可以使用Web Sockets(堆棧溢出還使用網絡套接字),或使用'AJAX投票」機制不變的通知,

它發送一個AJAX請求到服務器,等待服務器回覆到 。在檢索響應時,它會生成另一個AJAX請求 並繼續執行相同的操作,直到服務器停止生成新數據。


Read this for an explanation of AJAX Polling techniques

0

你可以有,因爲它創建帳戶您的帳戶創建的servlet更新數據庫或上下文屬性。

您可以向不同的servlet發送一個單獨的AJAX請求,該servlet會將數據庫或上下文屬性中找到的最新開發發送回網頁。然後,您可以每隔幾秒鐘(或相關時間間隔,具體取決於創建帳戶的任務的時間長度)來查詢您的服務器,以獲取所有更新。

相關問題