JSF Ifs com objetos da página

É o seguinte…

Venho de anos de criação de páginas direto com jsp (usando struts)
Estou migrando para JSF e estou tendo muita dificuldade para interagir alguma informação com os elementos da página.
Exemplo simples:

Quero alterar um class de uma tag em relação ao ID que vem da url.
No modelo que já estou acostumado, é só fazer algo como:

[code]

  • "> Alguma coisa....
  • [/code]

    Pra fazer isso num arquivo XHTML estou perdidinho!

    Eu imagino que seja melhor fazer isso do lado do ManagedBean, evitando ter esse tipo de lógica no seu XHTML, que é uma má prática quando falamos de JSF.

    Seu xhtml ficaria assim:[code]


  • Alguma coisa…
  • [/code]E no seu managed bean algo assim:[code]public String getStyle(){ //Seu código para descobrir qual o estilo correto }[/code]Para ter acesso ao mapa de parâmetros do request direto do [i]ManagedBean[/i] pode fazer assim:[code]FacesContext ctx = FacesContext.getCurrentInstance(); ExternalContext externalCtx = ctx.getExternalContext(); Map params = externalCtx.getRequestParameterMap();[/code]Aí o resto fica fácil :)

    Valeu Rodrigo!

    Tinha pensado nisso, mas achei que seria um pouco de gambiarra. Meu conceito era que o ManagedBean fosse apenas para manipular os dados de post e leitura de conteúdo que vinha do banco.

    Na verdade então acaba sendo um pouco do mesmo conceito do .net…

    Mais uma vez obrigado!