2011-06-10 75 views
0

我還是Flex的新手。我想製作一個flex代碼,每次向服務器請求數據。 我使用java作爲服務器。如何使Java和Flex實時連接?

實際上,我已經從asterisk cli命令成功地在服務器上生成了一個鏈接列表。像這樣:

Name/username    Host   Dyn Nat ACL Port  Status  
2005      (Unspecified) D N  0  UNKNOWN 
2004      (Unspecified) D N  0  UNKNOWN 
2003      (Unspecified) D N  0  UNKNOWN 
2002      (Unspecified) D N  0  UNKNOWN 
2001/2001     127.0.0.1  D N  19134 OK (106 ms) 
2000      (Unspecified) D N  0  UNKNOWN 
6 sip peers [1 online , 5 offline] 

我想通過實時連接在flex用戶界面中顯示,我該怎麼做?

我會感謝您的建議。

在此先感謝

+0

小旗關閉/更新 - 這是一個非常普遍的問題。有大量Google搜索結果會幫助您入門。 – Ryan 2011-06-10 15:41:30

回答

0

這是一個普遍的問題,所以這裏是一個普遍的答案。

這聽起來像你問的消息來自服務器,並去客戶端。這個想法是,當服務器上的數據發生變化時,服務器應該更新客戶端。

事實是,這種雙向通信不可能通過HTTP(以及Flex通過HTTP與Java通信),但可以通過輪詢或comet進行仿真。

兩個解決方案,我會建議尋找到的...

  • 實現使用Flex的timer自己的投票解決方案。
  • 查看到實時Flex應用程序的標準輪詢/彗星解決方案,如BlazeDSGraniteDS
+0

對不起,如果我的問題太籠統了。我的意思是,在Flex中是否有任何處理實時通信的功能? – aksar 2011-06-11 06:17:26

2

交付數據,你需要支持推送功能的服務器側件。 BlazeDS和GraniteDS使用長輪詢方法。 LiveCycle和WebORB支持RTMP。

這裏是一些documentation for LiveCycle解釋更多細節。

這是Blog post about doing this w/ BlazeDS

+0

我已經在使用red5作爲服務器了?這個怎麼樣? – aksar 2011-06-11 06:13:38

+0

Red5通常被認爲是媒體服務器,而不是數據服務器,所以我理解它沒有。但是,請確認他們的文檔。 – JeffryHouser 2011-06-11 06:44:37

+0

如果您追求的是,​​特別是需要使用什麼類來實現這一點,那麼看起來您需要生產者和消費者類;更多信息在我提供的文檔中。 – JeffryHouser 2011-06-11 06:47:50