我實現它顯示以下信息一個MatchPage:如何在按F5時刷新Wicket中的動態內容?
- MatchStatus(開/關)
- 得主(獲獎者的姓名)
- 形式上傳文件
(請按照鏈接看看它的樣子,[1]:http://www10.pic-upload.de/25.04.13/klmy9fe8cgk3.png)
現在問題來了。假設有人正在報告結果,而另一個人正在打開特定的MatchPage。報告完成後,MatchStatus將從OPEN變爲CLOSED,顏色將從OPEN =綠色變爲CLOSED =紅色,贏家將被設置,上傳文件的表單將消失(請參閱[2]:http://www7.pic-upload.de/25.04.13/9diu5bcbws9.png)。
報告結果的玩家將看到更新的MatchPage,而另一個玩家仍然會看到舊版本的MatchPage,即使他刷新了瀏覽器。
我能解決OPEN問題/用我自己的LoadableDetachableModel CLOSED:
@Override
public String load()
{
Match m = dao.getMatchFromID(match_id);
String result = "OPEN";
if (m.getClosed())
{
result = "CLOSED";
reportForm.setVisible(false); //does not work
colorBehavior.setColor("red"); //does not work
}
return result;
}
標籤上我的MatchPage:
matchStatus = new Label("matchStatus", new MyMatchModel(m.getMatch_id(), matchDAO, reportForm));
正如你可以在load()方法看,設置reportForm不可見並將顏色設置爲紅色不起作用。
任何想法如何我可以解決這樣的問題?當用戶按下F5 /刷新瀏覽器時,如何使窗體消失並將顏色更改爲紅色。
設置可見你重新渲染頁面後?我也不會打賭,用戶知道他必須按F5或刷新。如果這很重要,我會使用'AjaxSelfUpdatingTimerBehavior'。 – 2013-04-26 07:33:15