FC ConcursosFC Concursos

Questão FC266244

Considerando a versão Java EE 6 e um servidor Apache Tomcat corretamente configurado, imagine que foi realizada a implementação do servlet abaixo. Desconsidere os imports. public c

Plataforma Java EE

IDECAN · 2019

Considerando a versão Java EE 6 e um servidor Apache Tomcat corretamente configurado, imagine que foi realizada a implementação do servlet abaixo. Desconsidere os imports.

 

public class HelloWorld extends HttpServlet {

protected void service (

HttpServletRequest req, HttpServletResponse res)

throws ServletException, IOException {

 

PrintWriter out = req.getWriter();

out.println("");

out.println("");

out.println("Hello World!");

out.println("");

out.println("");

}

}

 

O código acima

  1. gera uma página HTML com a frase “Hello World!”, caso a URL configurada para servlet seja digitada e acionada no navegador.
  2. não irá compilar, pois um objeto do tipo HttpServletResponse não tem um método getWriter().
  3. não irá compilar, pois um objeto do tipo HttpServletRequest não tem um método getWriter().
  4. gera uma página HTML em branco, devido a um erro em tempo de execução do servlet.
  5. gera uma página HTML em branco, pois o HTML será escrito no console do servidor ao qual o servlet está executando.
Mostrar resposta e comentário

Gabarito

Certo

Comentário do professor

A alternativa está correta porque o método getWriter() pertence à interface HttpServletResponse, não a HttpServletRequest. O objeto HttpServletRequest representa os dados da requisição (parâmetros, cabeçalhos, fluxo de entrada), enquanto o objeto HttpServletResponse representa a saída que o servidor envia ao cliente.

Ao chamar req.getWriter() o compilador procura um método getWriter() na classe do parâmetro HttpServletRequest e não o encontra, gerando erro em tempo de compilação (método inexistente).

Para corrigir, obtém-se o escritor da resposta: PrintWriter out = res.getWriter(); e, opcionalmente, configura-se o tipo de conteúdo com res.setContentType("text/html;charset=UTF-8");, antes de escrever a saída.

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

Continue aprendendo