我有一个表格,类似的东西:
<html>
<head>
<!-- Some css file included here -->
</head>
<body>
<!-- Form parameters like action, method omitted for simplicity-->
<form>
<p class="someTextClass">msg[code.text]</p>
<input class="someInputClass" type="text"/>
<button class="someButtonClass">msg[code.button]</button>
<p class="someHelpTextClass">msg[code3.help]</p>
</form
</body
</html>
但目前有很多条件声明,如“(condition)?messageOne:messageTwo”和“rendered”属性。但是我想同时切换标签和相关css类中的所有文本(而不是丢失i18n)。我想在一个地方设置一个参数,并根据它自动切换所有的CSS和文本。在JSF中有类似的东西吗?当我学习Spring时,有一些类似主题的东西,JSF中是否有主题模拟?
P.S。如果我的解释中有不清楚的地方请写评论,我会更新问题。
答案 0 :(得分:0)
您可以升级到JSF 2.2吗? resources and contracts的概念正是您所寻找的。
或者,您可以从辅助bean中获取适当的主题样式:
webapp/
resources/theme1/css/styles.css
resources/theme2/css/styles.css
<h:outputStyleSheet library="#{someBean.theme}" name="css/styles.css"/>
由于outputStyleSheet也可以使用EL作为名称,因此您也可以将该代码推送到bean中。
对于pageTemplate本身,您应该考虑从bean中获取该信息。
希望有所帮助。