3

We need to use multiple primefaces JSF themes in a single web application, we have several modules in the application each having their own few screens, and we want each module to have different primefaces theme,

can anyone please let us know how that can be achieved.

in web.xml we have specified :

<context-param>
    <param-name>primefaces.THEME</param-name>
    <param-value>start</param-value>
  </context-param>

thanks

4

2 回答 2

5

每页你可以得到它。在 web.xml 中,您可以编写:

<context-param>
   <param-name>primefaces.THEME</param-name>
   <param-value>#{sessionBean.userTheme}</param-value>
</context-param>

并在每次页面更改时在支持 bean 中设置 userTheme。

否则,您可以扩展 primefaces 组件。然后为每个组件指定特定的主题。

于 2013-10-22T10:32:57.647 回答
0

在 Web.xml 文件中设置 primefaces 主题将影响整个应用程序,但有一个解决方法如下:

  1. 将所需的 primefaces 主题下载为 jar 文件(例如:sunny)
  2. 在 web 资源文件夹中,创建一个子文件夹“primefaces-sunny”
  3. 提取主题jar并将“theme.css”和“images”文件夹复制到创建的子文件夹“primefaces-sunny”
  4. 现在为每个模块创建一个模板(facelet 模板)
  5. 在每个模板中包含目标样式表 < h:outputStylesheet library="primefaces-sunny" name="theme.css" />
  6. 让模块中的每个页面都使用模块模板页面

而已 :)

于 2015-04-02T12:03:05.240 回答