2011-11-14 129 views
0

好的,所以基本上我有一個帶有支持FragmentBean的jspf模板文件,我希望在同一個請求頁面範圍內包含多次。當我包含這個模板時,我給它傳遞了一個不同的參數值,這樣我就可以識別出我正在模板中處理哪個實例,並將數據正確存儲在會話映射中。我遇到的問題是我對此模板包含的一個實例執行的任何操作都適用於所有其他操作。因此,例如,當我單擊按鈕隱藏或取消隱藏模板內的面板時,所有包含的實例也隱藏並取消隱藏相應的隱藏面板。這使我意識到它不是創建新的支持bean實例。看起來好像我可能濫用jsp:include,但是如何獲得期望的代碼重用,多次包含單個jsp文件?多次包含一個jsp文件

我只限於JSF 1.2,JSTL 1.1和JBoss 4.0.4。所以沒有RichFaces AJAX技巧。是的,我意識到我們需要升級。又一次戰鬥。

回答

3

因爲它正在多次使用相同的實例,因此任何事件或操作都會更新特定的託管bean,並且將相同的信息反映到您包含頁面的任何位置。

當您包含多次時,並不意味着每次都有新的實例。

你可以做的是傳遞參數來確定你所在的位置,然後做一些功能。

另一個竅門是聲明具有不同會話變量的多個聲明。

+0

我正在走這條路線來解決這個問題,我有一些問題。我在這裏發佈了我的關注問題:http://stackoverflow.com/questions/8228823/jsf-accessing-backing-map-object – Nikordaris