O HttpServletResponse representa a resposta do Servlet. Anal...

Próximas questões
Com base no mesmo assunto
Q1853875 Programação
O HttpServletResponse representa a resposta do Servlet. Analise as afirmações abaixo sobre HttpServletResponse:
I. setContentType() é um método que diz ao browser como tratar os dados enviados na requisição.
II. O método sendResponse(aStringURL) permite redirecionar uma solicitação.
III. Não é possível fazer um redirecionamento após uma resposta ter sido gerada.
Está(ão) correta(s) apenas a(s) afirmativa(s)
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Resposta Correta: D

Vamos analisar cada uma das afirmações para entender a resposta correta:

Afirmação I: O método setContentType() é utilizado para especificar o tipo MIME do conteúdo da resposta, o que indica ao navegador como processar ou exibir o conteúdo enviado pelo servidor. Por exemplo, setContentType("text/html") informa ao navegador que o conteúdo deve ser tratado como uma página HTML. Portanto, a afirmação I está incorreta, pois trata-se da resposta do servlet e não da requisição.

Afirmação II: A afirmação apresenta um erro de nomenclatura. O método correto para redirecionar uma solicitação é sendRedirect(String location) e não sendResponse(aStringURL). O método sendRedirect() envia ao navegador um cabeçalho de status informando que a página foi movida temporariamente para outro endereço. Sendo assim, a afirmação II está incorreta.

Afirmação III: É verdade que não se pode fazer um redirecionamento após a resposta ter sido comprometida, ou seja, após terem sido enviados os cabeçalhos e o corpo da resposta ao cliente. Qualquer tentativa de redirecionamento ou alteração no cabeçalho depois disso resultará em um erro, pois o servlet já indicou que a resposta foi concluída. Portanto, a afirmação III está correta.

Com base na análise, a alternativa correta é a D, pois somente a afirmação III está correta.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

afirmação I : Define o tipo de conteúdo da resposta que está sendo enviada ao cliente, se a resposta ainda não tiver sido confirmada. O tipo de conteúdo fornecido pode incluir uma especificação de codificação de caracteres, por exemplo, . A codificação de caracteres da resposta só é definida a partir do tipo de conteúdo fornecido se esse método for chamado antes de  ser chamado. - Documentaçao java.

afirmação II - não encontrei este método na documentação java para o HttpServletResponse

afirmação III - Correta, pois  Este método não tem efeito se chamado após a confirmação da resposta. Ele não define a codificação de caracteres da resposta se for chamado após  ter sido chamado ou após a resposta ter sido confirmada.

https://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletResponse.html

O método sendResponse auxilia o Servelet a enviar uma resposta ao usuário

setContentType = Define o tipo de conteúdo

Exemplo:

response.setContentType("text/plain");

response.setContentType("application/json");

response.setContentType("text/html");

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo