Prévia do material em texto
das A Gabarito utoatividades PROGRAMAÇÃO PARA WEB II Centro Universitário Leonardo da Vinci Rodovia , nº .BR 470 Km 71, 1 040 Bairro Benedito - CEP 89130-000 I daialn - Santa Catarina - 47 3281-9000 Elaboração: Revisão, Diagramação e Produção: Centro Universitário Leonardo da Vinci - UNIASSELVI 2017 PROF.º Cristiano Roberto Franco 3UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES P R O G R A M A Ç Ã O P A R A W E B II GABARITO DAS AUTOATIVIDADES DE PROGRAMAÇÃO PARA WEB II Centro Universitário Leonardo da Vinci Rodovia , nº .BR 470 Km 71, 1 040 Bairro Benedito - CEP 89130-000 I daialn - Santa Catarina - 47 3281-9000 Elaboração: Revisão, Diagramação e Produção: Centro Universitário Leonardo da Vinci - UNIASSELVI 2017 UNIDADE 1 TÓPICO 1 1 Diferencie um servidor de aplicação de um webcontainer e forneça exemplos da aplicabilidade de ambos. R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. 2 Explique detalhadamente e exemplifique a diferença entre uma layer e uma tier, no contexto de arquitetura de software. R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. 3 Uma das vantagens da utilização de um AS que obedeça às especificações JEE é a disponibilização de serviços que antes eram implementados manualmente pelos desenvolvedores. Com vistas a isto, avalie a lista de serviços abaixo. I Segurança através do JAAS. II Mensageria através do JMS. III Remotabilidade. IV Componentização através do JTA. Agora assinale a alternativa que lista corretamente os serviços disponibilizados pelos servidores de aplicação JEE 7: R.: a) (x) I, II e III. b) ( ) II e III. c) ( ) I e III. d) ( ) II e IV. 4 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD P R O G R A M A Ç Ã O P A R A W E B II TÓPICO 2 1 Configure as duas IDEs (eclipse e netbeans) para trabalharem ambas com os servidores de aplicação GlassFish e WildFly: R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. 2 Configure mais um datasource para cada servidor de aplicação, preferencialmente utilizando um banco de dados diferente do MySQL: R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. 3 Encontre e descreva pelo menos mais três implementações de Servidores de Aplicação compatíveis com a especificação JEE 7. Estes servidores de aplicação podem ser tanto proprietários como open source. R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. TÓPICO 3 1 Implemente a aplicação que utilizamos ao longo do capítulo para demonstrar os conceitos e execute-a. Liste e descreva o que ocorre quando ela passa por cada etapa do ciclo de vida do JPA: R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. 2 Diferencie e descreva a aplicabilidade das anotações @RequestScoped e @SessionScoped: R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. 3 Implemente uma aplicação que contenha uma tela de login e senha utilizando o JSF. Deve existir um MB que verifica os valores para ver se são iguais a “admin” para o login e “admin” para a senha. Após a validação ou não dos valores, uma mensagem deverá ser exibida no console do AS. R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. 5UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES P R O G R A M A Ç Ã O P A R A W E B II UNIDADE 2 TÓPICO 1 1 Implemente um mecanismo de persistência completo para o exemplo deste tópico, associando-o com as ações da interface gráfica. Dica: Utilize um singleton com uma coleção (List, Map, Set) para armazenar os objetos. R.: A resposta desta questão é feita somente através de implementação, não sendo possível colocá-la no caderno, pois ocuparia em torno de 10 páginas. Além disso, cada aluno pode implementar de uma maneira diferente, o que também inviabiliza a colocação de um gabarito. 2 O componente Calendar do JSF originalmente imprime os valores em inglês, conforme vimos no exemplo deste tópico. Através de buscas na Internet, descubra de que forma proceder com a alteração do idioma deste componente para o português. R.: Uma resposta possível para o problema é encontrada no seguinte fórum: <http://www.guj.com.br/java/262520-respondido-calendar-em-portugues-no- primefaces-3>. Entretanto, o acadêmico pode buscar de outros lugares que contenham respostas semelhantes. 3 Descreva detalhadamente o ciclo de vida do JSF, considerando a ação de executar a página listagemDePessoas.xhtml que foi implementada neste tópico. R.: Se for a primeira vez que o xhtml é chamado, o AS cria a árvore de componentes na memória e verifica se existe valor para o objeto atrelado à página através do Managed Bean. Se não existir valor para o objeto, no nosso caso uma lista, somente o cabeçalho e o rodapé são exibidos. Caso contrário, o JSF chama os getters de cada objeto contido na lista e alimenta os componentes gráficos da tabela. Cada coluna corresponderá a um atributo do objeto contido na lista e cada linha corresponde a um objeto da mesma. Por fim, o HTML é gerado pelo AS e enviado ao browser do cliente. 6 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD P R O G R A M A Ç Ã O P A R A W E B II TÓPICO 2 1 Implemente uma funcionalidade de pesquisa de pessoas pelo nome, utilizando JPA e JSF. O resultado deverá ser uma lista de pessoas cujo nome seja igual ao nome digitado na pesquisa. Utilize o comando LIKE para atingir este resultado. R.: A resposta desta questão é feita somente através de implementação, não sendo possível colocá-la no caderno, pois ocuparia em torno de 10 páginas. Além disso, cada aluno pode implementar de uma maneira diferente, o que também inviabiliza a colocação de um gabarito. 2 Configure e utilize outro datasource com um banco de dados diferente do MYSQL para fazer a persistência de objetos pessoa. R.: O acadêmico deve seguir o procedimento indicado no tópico 2 da Unidade 1 deste caderno, alterando o banco de dados. 3 Implemente o CRUD de Pessoa utilizando pelo menos mais uma implementação da especificação JPA diferente do Hibernate. Você sentiu alguma diferença? Qual? R.: O acadêmico deve responder que as diferenças no uso são mínimas, pois as implementações seguem a especificação JPA. A linguagem de query JPAQL é exatamente a mesma do Hibernate, não apresentando diferenças. UNIDADE 3 TÓPICO 1 1 Implemente uma interface web para a calculadora do exemplo utilizando html. A interface deve permitir a utilização de todas as operações. R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. 2 Faça o mesmo que foi solicitado na questão 1, utilizando JSF. Você deve implementar a interface através de um xhtml e o managed bean que fará a interação com o stateless session bean. 7UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES P R O G R A M A Ç Ã O P A R A W E B II R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. 3 Descreva detalhadamente o ciclo de vida de um stateless session bean. R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. TÓPICO 2 1 Implemente uma interface web para a loja virtual do exemplo de stateful session bean, utilizando html ou jsf. R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. 2 Faça uma implementação de singleton session bean, que permita contar o número de usuários simultâneos de sua loja virtual. R.: A questão é de programação, o que torna inviável a elaboração deuma resposta. 3 Descreva detalhadamente o ciclo de vida de um statefull session bean. R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. TÓPICO 3 1 Implemente uma aplicação web utilizando JSF que faça uso do contexto CDI conhecido como SessionContext. R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. 2 Descreva detalhadamente de que forma funciona a injeção de dependências dentro de uma aplicação JavaEE. 8 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD P R O G R A M A Ç Ã O P A R A W E B II R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. TÓPICO 4 1 Implemente uma aplicação web utilizando JSF que faça uso do contexto CDI conhecido como SessionContext. R.: A questão é de programação, o que torna inviável a elaboração de uma resposta. 2 Descreva detalhadamente de que forma funciona a injeção de dependências dentro de uma aplicação JavaEE. R.: A questão é de programação, o que torna inviável a elaboração de uma resposta.