Questão nº 22
Questão de Tecnologia da Informação - Sistemas de Informação · FCC TRT15 2023 (nº 22)
Para exibir na página a propriedade ano de um bean gerenciado identificado como processo, corretamente configurado no escopo de requisição, usando a Expression Language (EL) em JavaServer Faces (JSF), utiliza-se a tag JSF
- A`<h:outputText value="processo.ano" />`
- B`<h:inputText value="#{processo.ano}" />`
- C`<h:outputText>#{processo.ano}</h:outputText>`
- D`#{processo.ano}`
- E`<h:outputText value="#{processo.ano}" />` (alternativa correta)
Resposta comentada
Gabarito Alternativa E
Em JSF, a Expression Language (EL) é usada para acessar dados de objetos Java (chamados beans gerenciados) e exibi-los na página. Para que o JSF entenda que você quer o valor de uma propriedade e não o nome dela como texto, você precisa usar a sintaxe #{}.
- (A) Incorreta: Embora use a tag
h:outputText(correta para exibir texto), o atributovalue="processo.ano"trata "processo.ano" como uma string literal, e não como uma expressão EL. O resultado seria a exibição da palavra "processo.ano" na tela. Armadilha da banca: Esta é a alternativa mais tentadora porque usa a tag correta e o nome da propriedade, mas falta o#{}crucial para que o JSF avalie a expressão. - (B) Incorreta: A tag
h:inputTexté usada para criar campos de entrada de texto (onde o usuário pode digitar), e não para exibir informações de forma estática na página. Embora o EL#{processo.ano}esteja correto, a tag escolhida não é a adequada para a finalidade de "exibir" (display) o valor. - (C) Incorreta: A tag
h:outputTexté correta, e a expressão#{processo.ano}também. No entanto, a forma correta de associar uma expressão EL aoh:outputTexté através do atributovalue, e não colocando a expressão entre as tags de abertura e fechamento. Essa sintaxe não é a padrão para binding de valor neste componente. - (D) Incorreta:
#{processo.ano}é a expressão EL correta para acessar a propriedade. Se usada diretamente em um template JSF, ela exibiria o valor. No entanto, a questão pede para usar uma tag JSF para exibir a propriedade, e esta alternativa apresenta apenas a expressão EL, sem a tag. - (E) Correta: A tag
<h:outputText>é a tag padrão e mais apropriada em JSF para exibir texto na página. O atributovalueé onde você especifica o conteúdo a ser exibido. A sintaxe#{processo.ano}é a forma correta de usar a Expression Language (EL) para que o JSF acesse o bean gerenciadoprocessoe obtenha o valor de sua propriedadeano(chamando o métodogetAno()).
Fonte: FCC TRT15 2023 Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.