FC ConcursosFC Concursos

Questão FC373607

Considere o trecho abaixo em uma página web que utiliza JSF. Considere que na mesma aplicação, em condições ideais, exista a classe Java abaixo. Para que seja obtida uma instância

Plataforma Java EE

FCC · 2019

Considere o trecho abaixo em uma página web que utiliza JSF.

 

 

Considere que na mesma aplicação, em condições ideais, exista a classe Java abaixo.

 

 

 

Para que seja obtida uma instância de Pessoa e chamado o método getNome a partir dessa instância, mostrando no campo do formulário o nome obtido, a lacuna I deve ser preenchida corretamente por

  1. pessoa.getNome()
  2. {pessoa.getNome();}
  3. jsf->pessoa.nome
  4. #[pessoa.getNome()]
  5. #{pessoa.nome}
Mostrar resposta e comentário

Gabarito

Errado

Comentário do professor

#{pessoa.nome} é uma expressão da Expression Language (EL) do JSF usada para ligar o componente a uma propriedade de um bean.

A EL resolve primeiro um bean chamado pessoa no contexto (por exemplo, um managed bean ou @Named com esse identificador) e em seguida acessa a propriedade nome.

Seguindo o padrão JavaBean, a expressão não lê diretamente o campo privado; ela invoca o método getNome() da classe Pessoa no momento da renderização para obter o valor a ser exibido.

Assim, colocar #{pessoa.nome} no atributo value de um componente JSF faz com que o campo do formulário mostre o valor retornado por getNome() do bean.

Observação: para que isso funcione é necessário que o bean esteja registrado com o nome correto e que exista o método getNome(); para envio/atualização do campo também é preciso o correspondente setNome(...).

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo