Atributo rendered="" JSF

Olá colegas,

Tenho uma dúvida: no meu sistema, preciso decidir se um componente JSF será renderizado ou não baseado em um lógica não muito trivial. Gostaria de passar um método (retornando um booleano, claro) como valor do atributo rendered="" do componente, mas gostaria de poder saber qual componente (o id dele) realizou a chamada do método. Isso é possível no JSF ?

obrigado!!

Tales.

É possível sim. Você pode implementar um ActionListener e no método que o processa, usar o ActionEvent.getSource para pegar o componente que deu origem ao evento. Faz o cast para a classe adequada a esse componente (por exemplo, HtmlInputText) e invoca o método getId nele. Estou explicando assim porque não tenho código JSF aqui para exemplificar, mas se você der uma busca no Google vai achar exemplos. Qualquer dúvida, poste aí.