Jsf Primefaces主题开关选择了主题

Jsf Primefaces主题开关选择了主题,jsf,primefaces,themes,Jsf,Primefaces,Themes,我用于设置Primefaces themeSwitcher组件,如。列表中所示,但themeSwitcher值为null。下面是代码 <h:panelGrid id="themeForm" columns="2"> <h:outputLabel value="#{res['ko.settings.tabThemeSettings.themeName']}" /> <p:outputPanel> <p:themeS

我用于设置Primefaces themeSwitcher组件,如。列表中所示,但themeSwitcher值为null。下面是代码

 <h:panelGrid id="themeForm" columns="2">
    <h:outputLabel value="#{res['ko.settings.tabThemeSettings.themeName']}" />
    <p:outputPanel>
            <p:themeSwitcher id="basic" 
                             style="width:165px"
                             value="#{settingsBean.selectedTheme}">
                    <f:selectItems value="#{settingsBean.themes}" 
                                   var="theme"
                                   itemLabel="#{theme.displayName}" />
            </p:themeSwitcher>
            </p:outputPanel>
            <p:commandButton id="themeButton"
                 value="#{res['ko.settings.tabThemeSettings.themeButton']}"
                 icon="#{res['ko.saveIcon']}"
                 actionListener="#{settingsBean.saveTheme}" 
                 process="@this" update="basic"/>
 </h:panelGrid>

因为您使用
value=“#{settingsBean.themes}”
作为列表主题值,使用
value=“#{settingsBean.selectedTheme}”
从主题列表中获取值,但您没有转换主题的转换器

private Theme selectedTheme;