多次包含单个jsp文件

时间:2011-11-14 13:32:34

标签: templates jsp jsf include

好的,基本上我有一个带有支持FragmentBean的jspf模板文件,我希望在同一个请求页面范围内多次包含它。当我包含这个模板时,我传递了一个不同的参数值,这样我就可以识别出我在模板中处理的实例,并将数据正确地存储在会话映射中。我遇到的问题是我在这个模板的一个包含实例上执行的任何操作都适用于所有其他操作。因此,例如当我单击按钮隐藏或取消隐藏模板内的面板时,所有包含的实例也隐藏和取消隐藏其对应的隐藏面板。这让我意识到它没有创建新的支持bean实例。看起来我可能会误用jsp:include但是如何多次获得包含单个jsp文件的所需代码重用?

我仅限于JSF 1.2,JSTL 1.1和JBoss 4.0.4。所以没有RichFaces ajax欺骗。是的,我意识到我们需要升级。又一场战斗。

1 个答案:

答案 0 :(得分:3)

您是对的,因为它多次使用同一个实例,因此任何事件或操作都会更新特定的托管bean以及相同的信息会反映在您包含页面的任何位置。

当您多次包含时,并不意味着每次都有新实例。

您可以做的是传递参数以识别您所在的位置,然后执行一些功能。

另一个技巧是使用不同的会话变量声明多个声明。