Associação Carioca de Ensino Superior Centro Universitário Carioca Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos de solicitação. São eles: a) HEAD, BODY e INIT; b )FLAG, TOS e TTL; c) GET, HEAD e POST; d) PUT, GET e INIT; e) PUSH, POST e HEAD. 2. Um formulário em HTML é um modelo de entrada de um conjunto de dados. O primeiro passo a ser dado para a construção de um formulário é fazer as etiquetas que desenham as janelas de entrada de dados. Os métodos que transferem dados do browser para o servidor são denominados ________ e ________. a) input – output b) post – get c) push – pop d) post – cat e) push – pull 3. GET e POST são alguns dos principais métodos que determinam o que o servidor deve fazer com o URL fornecido no momento da requisição de um recurso. Relacionado a esses métodos, considere: I. Dados enviados em uma requisição utilizando o método GET ficam visíveis na linha de endereço do navegador. II. Se não for especificado um método, o POST é adotado como padrão. III. O método GET é geralmente utilizado para enviar grandes quantidades de dados por meio de um formulário. IV. O método POST não exibe os dados enviados na linha de endereço do navegador. Está correto o que se afirma APENAS em a) I e II. b) I e IV. c) II, III e IV. d) III. e) IV. Servlets 4. Para criar um Servlet que processará as requisições HTTP na plataforma JavaWeb, deve-se a) criar uma classe que implemente a interface Servlet. b) criar uma classe que estenda a classe HttpServlet. c) implementar o método processHttpHeader. d) instanciar a classe |Servlet, passando para o parâmetro requestType o valor Servlet.HTTP_REQUEST. e) invocar o método Servlet.service(Servlet.HTTP_REQUEST) antes do processamento da requisição. Associação Carioca de Ensino Superior Centro Universitário Carioca 5. Um Servlet Contêiner controla o ciclo de vida de uma servlet onde são invocados três métodos essenciais: um para inicializar a instância da servlet, um para processar a requisição e outro para descarregar a servlet da memória. Os itens a seguir representam, nessa ordem, o que ocorre quando um usuário envia uma requisição HTTP ao servidor: I. A requisição HTTP recebida pelo servidor é encaminhada ao Servlet Contêiner que mapeia esse pedido para uma servlet específica. II. O Servlet Contêiner invoca o método init da servlet. Esse método é chamado em toda requisição do usuário à servlet não sendo possível passar parâmetros de inicialização. III. O Servlet Contêiner invoca o método service da servlet para processar a requisição HTTP, passando os objetos request e response. O método service não é chamado a cada requisição, mas apenas uma vez, na primeira requisição do usuário à servlet. IV. Para descarregar a servlet da memória, o Servlet Contêiner chama o método unload, que faz com que o garbage collector retire a instância da servlet da memória. Está correto o que se afirma em a) I, II, III e IV. b) I, apenas. c) I e IV, apenas. d) II, III e IV, apenas. e) II e III, apenas. 6. Assinale a alternativa que define corretamente um Servlet. a) É um método da JPA utilizado na persistência assíncrona de dados. b) É um componente que roda do lado do cliente para tratar problemas de comunicação. c) É uma classe Java utilizada para estender as capacidades de um servidor. d) É uma biblioteca JBOSS que emula servidores no lado do cliente. e) É uma JSP que possibilita a execução de código no lado do cliente, mesmo sem comu- nicação com um servidor. 7. Considere o Servlet a seguir: import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class ClasseServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response){ response.write(“<html>”); response.write(“<body>”); response.write(“Servlet em operação!”); response.write(“</body>”); response.write(“</html>”); } } Sobre o código do Servlet, é possível afirmar que: a) ao ser executado por um contêiner de Servlet, será exibida uma tela em branco no navegador. Associação Carioca de Ensino Superior Centro Universitário Carioca b) ao ser executado por um contêiner de Servlet, será exibida a mensagem “Servlet em operação!”, na tela do navegador. c) não pode ser compilado, pois a classe HttpServletResponse não possui o método write. d) não pode ser compilado, pois HttpServlet é uma interface e, portanto, não pode ser estendida por uma classe. e) o conteúdo exibido na tela do navegador não será codificado corretamente, pois a codificação da página não foi informada. 8. Em JSP, a diretiva taglib define: a) uma biblioteca de tags para serem usadas na página. b) um conjunto de classes importadas para serem usadas na página. c) uma nova tag para ser usada na página. d) uma biblioteca para ser inserida na página. e) um módulo logicamente coesivo. 9. É característica de um arquivo JSP a: a) compilação em um servlet. b) presença maciça de código Assembly. c) impossibilidade de inclusão de comentários. d) execução exclusiva em sistemas Windows e) execução exclusiva em sistemas Linux. 10. Um conjunto de Servlets, páginas JSP, classes Java, bibliotecas, ícones, páginas HTML e outros elementos, que podem ser empacotados juntos pelos desenvolvedores, deve ser instalado no Tomcat sob o diretório a) bin. b) conf. c) logs. d) webapps. e) work. JSP 11. Os objetos implícitos de JSP que se baseiam na implementação da página como um servlet são a) page e config. b) request e response. c) out e request. d) session e exception. e) application e pageContext. 12. Ao se executar uma página JSP na plataforma J2EE, o servidor de aplicação a) compila a página por meio de um compilador específico e a executa, enviando o resultado para o navegador. b) envia a página para um interpretador Java que faz o processamento e envia o código HTML resultante para o navegador. c) envia o conteúdo HTML ao navegador, substituindo o código delimitado por <% e %> pelos valores correspondentes. d) envia todo conteúdo da página para o navegador, pois, devido à compatibilidade do código Java e JavaScript, ela pode ser processada diretamente pelo navegador. e) traduz o conteúdo da página em um Servlet, compila o Servlet e o executa, enviando o resultado para o navegador. Associação Carioca de Ensino Superior Centro Universitário Carioca 13. Na diretiva page, do JSP, utiliza-se o atributo import, que permite a) configurar pacotes. b) importar arquivos html. c) importar pacotes. d) configurar arquivos html. e) importar figuras. 14. Preencha as lacunas e, em seguida, assinale a alternativa correta. Uma JSP consiste em uma combinação de ___________ e ___________ , que contêm o código executável e a marcação estática, como ____________ ou ____________ . O código contido na JSP é identificado e executado pelo ___________ , e a página resultante é enviada para o cliente. a) tags JSP / scriplets / HTML / XML / servidor b) tags JSP / scriplets / HTML / XML / compilador c) tags JSP / HTML / Java / Java Script / compilador d) tags JSP / HTML / Java / Java Script / servidor e) tags JSP / HTML / Java / XML / servidor 15. Analise as seguintes afirmações a respeito de JSP: I. Em uma aplicação Web, há apenas um objeto page em cada JSP. II. Comentários JSP aparecem na resposta ao cliente. III. Os objetos com escopo session duram por toda a sessão de navegação do cliente. Assinale a opção correta. a) Apenas a afirmação I é verdadeira. b) Apenas a afirmação II é verdadeira. c) Apenas a afirmação III é verdadeira. d) As afirmações I, II e III são verdadeiras. e) Nenhuma das afirmações é verdadeira. 16. Em relação aos conceitos da tecnologia JavaServer Pages (JSP), analise as seguintes afirmativas: I. Uma página JSP é um documento texto que contém dados estáticos em formato HTML e XML, por exemplo, e elementos JSP que constroem o conteúdo dinâmico. II. Os elementos JSP em uma página JSP podem ser expressos nas sintaxes padrão e XML, embora em um dado arquivo, pode-se usar somente uma das sintaxes. III. Uma página JSP em sintaxe XML é um documento XML que pode ser manipulado pelas ferramentas e APIs para documentos XML. Além disso, pode ter um jsp:root como elemento raiz. Marque a alternativa CORRETA: a) apenas as afirmativas I e II são verdadeiras. b) apenas as afirmativas I e III são verdadeiras. c) apenas as afirmativas II e III são verdadeiras. d) todas as afirmativas são verdadeiras. 17. O mecanismo de inclusão, que permite o conteúdo dinâmico ser incluído em uma JSP em tempo de solicitação, é denominado a) Ação <jsp:plugin>. b) Ação <jsp:include>. Associação Carioca de Ensino Superior Centro Universitário Carioca c) Diretiva include. d) Diretiva Page. e) Diretiva taglib. MVC (Servlets e JSP) 18. Considere uma aplicação Web em desenvolvimento utilizando Java Servlet e JSP e o design pattern MVC. Nesse contexto, é correto afirmar que: a) uma classe "Cliente" que possui os atributos "codigo", "nome" e "renda" e os respectivos métodos getters e setters para esses atributos deve ser representada no componente MODELdo MVC. b) uma classe "ClienteDAO" que possui métodos para acessar o banco de dados e executar instruções SQL deve ser representada no componente CONTROLLER do MVC. c) uma página JSP que gera um formulário de cadastro deve ser representada no componente CONTROLLER do MVC. d) uma página JSP nunca pode acessar diretamente uma classe Data Access Object (DAO) que acessa o banco de dados. e) as classes Servlet geralmente são representadas no componente MODEL do MVC. 19. O componente Controller do MVC: a) Define o comportamento da aplicação, as ações do usuário para atualizar os componentes de dados e seleciona os componentes para exibir respostas de requisições. b) Envia requisições do usuário para o controlador e recebe dados atualizados dos componentes de acesso a dados. c) Responde às solicitações de queries e encapsula o estado da aplicação. d) Notifica os componentes de apresentação das mudanças efetuadas nos dados e expõe a funcionalidade da aplicação. e) É onde são concentradas todas as regras de negócio da aplicação e o acesso aos dados. 20. Em uma aplicação web desenvolvida com Java utilizando o padrão MVC, as servlets e as classes no padrão DAO são representadas, respectivamente, nos componentes . a) Controller e View. b) View e Model. c) Controller e Model. d) Model e Controller. e) View e Controller.