FC ConcursosFC Concursos

Questão FC373609

Em uma servlet, de um site desenvolvido em Java, o fragmento de código abaixo retorna uma lista de processos para o arquivo exibir_processos.jsp. ProcessosDao dados = new Processos

Plataforma Java EE

FCC · 2021

Em uma servlet, de um site desenvolvido em Java, o fragmento de código abaixo retorna uma lista de processos para o arquivo exibir_processos.jsp.

 

ProcessosDao dados = new ProcessosDao();

ArrayList<Processo> listaProcessos = dados.consultar(processo);

request.setAttribute("retornaProcessos", listaProcessos);

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

disp.forward(request, response);

 

No arquivo exibir_processos.jsp, para receber a lista de processos, utiliza-se a instrução

  1. <%ArrayList<Processo> listaProcessos = request.getAttribute ("retornaProcessos");%>
  2. <%ArrayList<Processo> listaProcessos = (Processo) request.getList("retornaProcessos");%>
  3. <%ArrayList<Processo> listaProcessos = ${retornaProcessos};%>
  4. <%ArrayList<Processo> listaProcessos = (ArrayList<Processo>) request.getAttribute ("retornaProcessos");%>
  5. <%ArrayList listaProcessos = (ArrayList<Processo>) $_REQUEST.getParameter ("retornaProcessos");%>
Mostrar resposta e comentário

Gabarito

D

Comentário do professor

Na JSP, a instrução correta é um scriptlet que recupera o objeto salvo pelo servlet no escopo da request. O método request.getAttribute retorna um Object, por isso é necessário o casting para o tipo original: ArrayList<Processo>.

O nome usado em getAttribute("retornaProcessos") deve ser exatamente o mesmo definido no servlet com request.setAttribute. Como o servlet encaminhou a requisição com RequestDispatcher.forward, a lista fica disponível na mesma request recebida pela JSP.

Portanto, a linha <% ArrayList<Processo> listaProcessos = (ArrayList<Processo>) request.getAttribute("retornaProcessos"); %> recupera corretamente a lista, permitindo em seguida iterá‑la ou exibi‑la na página.

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

Continue aprendendo