如何在JSF中呈现块,类似于Tapestry <delegate to =“xxx”> tag </delegate>

时间:2014-01-14 07:01:52

标签: jsf jsf-2.2

我正在尝试将Tapestry应用程序转换为JSF。 Tapestry有一个有用的功能,阻止。 您可以在页面上包含许多块(通常是html代码段), 然后,使用<delegate to="block">组件,选择一个块 并在运行时动态呈现它。

这是Tapestry块文档: http://tapestry.apache.org/5.3.7/apidocs/org/apache/tapestry5/corelib/components/Delegate.html

我能找到的最接近的是<ui:include src="#{sampleBean.block}"/> 其中sampleBean.getBlock()返回类似“/templates/block1.xhtml”的内容 在运行时。

这个解决方案迫使我有很多小块文件,我认为这些文件效率不高 或者最好的方式。

nyone有更好的解决方案吗?感谢。

1 个答案:

答案 0 :(得分:0)

我解决了包含一系列块的<ui:include>模板,并且使用参数,一次只能渲染一个