Boa tarde!
Alguém já precisou fazer a troca de tema no primefaces em tempo de execução?
Trabalho em um grupo de empresas e cada uma possui uma cor diferente (cor predominante), os temas iriam variar em no máximo três opções de cores.
Eu imagino que seja possível, pois no showcase do Prime ele faz isso, mas alguém já fez isso?
Eu já utilizei o <p:themeSwitcher> em desenvolvimento. Li em algum fórum que não é recomendável utilizar esse componente em ambiente de produção, por questao de performance.
O primefaces utiliza os temas do ThemeRoller e os arquivos css já estão incluidos no jar do primefaces.
Você pode fazer um teste(com o exemplo do site) pra avaliar melhor essa questão da performance na sua aplicação.
Quanto à desenvolver os themas e disponibilizá-los no componente themeSwitcher, não deve ser complicado, já que ele segue o padrão ThemeRoller(Jquery).
Minha idéia é que o usuário não escolha, fucnionaria mais ou menos assim:
Se logar usando a empresa X então vou usar um tema com tons de azul.
Se logar usando a empresa Y utilizo um tema com tons verde.
Penso em colocar isso na tela de login, logo após o seu login estiver validado o sistema iria trocar o tema de acordo com o que for prédefinido.