FC ConcursosFC Concursos

Questão FC373608

O trecho de código abaixo é parte de uma servlet Java, presente em uma aplicação que executa em condições ideais. request.setAttribute("mensagem","Acesso negado"); RequestDispatche

Plataforma Java EE

FCC · 2023

O trecho de código abaixo é parte de uma servlet Java, presente em uma aplicação que executa em condições ideais.

 

request.setAttribute("mensagem","Acesso negado");

RequestDispatcher disp = request.getRequestDispatcher("mensagens.jsp");

disp.forward(request, response);

 

Este trecho disponibiliza uma mensagem "Acesso negado" que a página Java Server Pages mensagens.jsp pode receber e exibir por meio da instrução

  1. <% String m = request.getParameter("mensagem"); out.print(m); %>
  2. <%= ${mensagem} %>
  3. ${requestScope.mensagem}
  4. <% ${mensagem}; %>
  5. <% out.print(request.getResponse("mensagem")); %>
Mostrar resposta e comentário

Gabarito

Certo

Comentário do professor

A expressão ${requestScope.mensagem} é a forma correta, em JSP EL, de recuperar o atributo colocado pelo servlet no escopo da requisição.

No servlet foi usado request.setAttribute("mensagem","Acesso negado"), que grava o par nome/valor no request. Em seguida o forward encaminha a mesma requisição para a JSP, preservando esses atributos.

O objeto implícito requestScope na EL representa o mapa de atributos do request. Assim, ${requestScope.mensagem} busca a chave "mensagem" e imprime seu valor na página.

Essa expressão é avaliada automaticamente pelo container e o resultado é escrito na saída da JSP, permitindo exibir "Acesso negado" sem código scriptlet.

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

Continue aprendendo