Jsf 2 如何在PrimeFaces3中通过Java代码设置主题?

Jsf 2 如何在PrimeFaces3中通过Java代码设置主题?,jsf-2,primefaces,Jsf 2,Primefaces,例如,我有一个主题测试。如何在Primefaces中使用Java代码设置此主题?我不想使用context paramprimefaces.THEME,我也不想使用这是您需要做的事情(未经测试,但应该给您一个它应该如何工作的指示) 禁用标准主题支持(在web.xml中): 代码: 在所有页面(模板)的头部添加以下标记 代码: 您可以在以下URL上找到此解决方案,另一种方法是:将样式表包含到页面模板中: 其中#{themesBean.theme}变量引用主题的名称 在PF5中测试p.

例如,我有一个主题
测试
。如何在Primefaces中使用Java代码设置此主题?我不想使用context param
primefaces.THEME
,我也不想使用

这是您需要做的事情(未经测试,但应该给您一个它应该如何工作的指示)

  • 禁用标准主题支持(在web.xml中):
代码:

  • 在所有页面(模板)的头部添加以下标记
代码:



您可以在以下URL上找到此解决方案,另一种方法是:将样式表包含到页面模板中:


其中#{themesBean.theme}变量引用主题的名称

在PF5中测试p.S

关于类似问题的相同答案

可能重复
<context-param>
  <param-name>primefaces.THEME</param-name>
  <param-value>none</param-value>
</context-param>
@Named @SessionScoped
public class LayoutBean
{
    ...
    private String theme = "test";
    ...
    public String getTheme()
    {
        return theme;
    }
    ...
}
 <link rel="stylesheet" href="#{request.contextPath}/themes/{layoutBean.theme}/skin.css" />