我知道我可以使用 ui:param 从基于模板构建的组合中传递字符串
像这样:http://www.mkyong.com/jsf2/how-to-pass-parameters-to-jsf-2-0-template-file/
然后我可以使用XHTML中的参数作为模板文件。
可以发一个数组吗?
即
<ui:insert name="header" >
<ui:include src="/template/common/commonHeader.xhtml">
<ui:array name="tagArray" values="val1, val2, val3" />
</ui:include>
</ui:insert>
仅当您的环境支持 EL 3.0(Java EE 6 / Servlet 3.0 的一部分,因此至少支持 Tomcat 8、WildFly 8、GlassFish 4 等或更高版本)。您可以使用 列表构造符号
#{[x,y,z]}
。
<ui:param name="tagList" value="#{['val1', 'val2', 'val3']}" />
如果您还没有使用 EL 3.0,那么最好的选择是使用 JSTL
fn:split()
将分隔字符串拆分为数组。
<ui:param name="tagArray" value="#{fn:split('val1,val2,val3', ',')}" />