320 likes | 435 Views
Desenvolvimento de Aplicações Web nas plataformas J2EE e IDE Eclipse. LEIC – Engenharia de Software. Estrutura da Apresentação. Java To Enterprise Edition (overview) Aplicações Web - Páginas Web Aplicações Web - Web Services IDE Eclipse Eclipse Web Tools Platform Project.
E N D
Desenvolvimento de Aplicações Web nas plataformas J2EE e IDE Eclipse LEIC – Engenharia de Software
Estrutura da Apresentação • Java To Enterprise Edition (overview) • Aplicações Web - Páginas Web • Aplicações Web - Web Services • IDE Eclipse • Eclipse Web Tools Platform Project LEIC - Engenharia de Software
Plataforma paraSoluções Empresariais • Baseada em componentes modulares standard • Proporciona um conjunto completo de serviços • Gere automaticamente detalhes relativos ao comportamento das aplicações 2. Java To Enterprise Edition (overview)
Serviços Empresariais J2EE 2. Java To Enterprise Edition (overview)
Tecnologias Implementadas • Conceito “Write Once, Run Anywhere” • Java Database Connectivity (JDBC) • Servlets e JavaServer Pages (JSPs) • Common Object Request Broker Architecture (CORBA) • Extensible Markup Language (XML) • Enterprise JavaBeans (EJBs) 2. Java To Enterprise Edition (overview)
Modelo para Aplicações Empresariais 2. Java To Enterprise Edition (overview)
Modelo de Aplicação J2EE • Permite um desenvolvimento • mais rápido • com melhor qualidade e manutenção • com portabilidade para um grande número de plataformas empresariais • Aumenta a produtividade das equipas de desenvolvimento • Permite uma gestão melhorada dos recursos disponíveis • Resulta num melhor aproveitamento dos investimentos tecnológicos efectuados pelas organizações empresariais 2. Java To Enterprise Edition (overview)
Servlets • Servlets permitem que a lógica de aplicação seja embutida no processo request-response: • Um servlet é um programa Java que corre do lado do servidor e que estende a funcionalidade do servidor Web. 3. Desenvolvimento de Aplicações Web - Páginas Web
Funcionamento dos Servlets • Quando um servidor Web entende que uma URL deve ser atendida por um Web Container, passa o controlo para o container (um conjunto de classes em Java, geradas automaticamente) • Este container decide qual é a Web Application que deve executar; • Quando é um servlet, o container controla a execução do servlet; Através da API de servlets, o servlet pode aceder à informação do Request e fornecer uma Response. 3. Desenvolvimento de Aplicações Web - Páginas Web
Java Server Pages (JSP’s) • A geração de informação dinâmica pode ser feita de duas formas: • Programando-a (servlets); • Através de templates (Java Server Pages ou JSP). 3. Desenvolvimento de Aplicações Web - Páginas Web
Funcionamento dos JSP’s • JSP é uma extensão da tecnologia de servlets: • Uma página JSP contém código HTML (ou XML); • Tags ou "scripts" especiais são introduzidos no HTML para execução; • A página JSP é traduzida para um servlet, automaticamente, pelo servidor J2EE; • O servlet é compilado (apenas uma vez); • A partir daí, o servlet é executado para gerar o conteúdo dinâmico; • É de notar que depois de a página JSP ser transformada em servlet, a situação é idêntica à execução de um servlet. 3. Desenvolvimento de Aplicações Web - Páginas Web
Funcionamento dos JSP’s Diagrama de Funcionamento 3. Desenvolvimento de Aplicações Web - Páginas Web
Enterprise JavaBeans (EJB) • A especificação EJB define: • As interfaces entre o servidor EJB e os componentes nele contidos; • Os serviços que o container oferece para esses componentes. • O objectivo maior é deixar o programador concentrar-se no “Business Logic”. Isso é feito de duas grandes formas: • Programação Declarativa; • Serviços Automáticos. 3. Desenvolvimento de Aplicações Web - Páginas Web
Programação Declarativa Cada Bean tem um “Deployment Descriptor” que permite configurá-lo visualmente durante a implementação; Sem ter código fonte e sem programar. Aumenta a produtividade das equipas de desenvolvimento; Serviços Automáticos Implementados por um Container. Modelo de Aplicação J2EE 3. Desenvolvimento de Aplicações Web - Páginas Web
Desenvolvimento de Web Services em J2EE • Serviços oferecidos através da Internet utilizando aplicações modulares • Facilitam a comunicação entre aplicações de empresas diferentes baseadas no XML • Estas aplicações utilizam: • Web Services Description Language (WSDL) • Universal Description, Discovery and Integration(UDDI) • Simple Object Access Protocol (SOAP) 3. Desenvolvimento de Aplicações Web - Web Services
Tecnologias Java usada para Web Services • A linguagem Java é ideal para construir Web Services • Foram criadas APIs com a finalidade de ligar o Java ao XML • Estas APIs e algumas ferramentas encontram-se no Java Web Services Developer Pack (Java WSDP) 3. Desenvolvimento de Aplicações Web - Web Services
Java APIs • Java API for XML Registries (JAXR) • Aceder a registos standard tais como os baseados no UDDI e no ebXML • Publicar usando o registo UDDI ou o registo ebXML, ou procurar por um registo de um Web Service • Java API for XML-based RPC (JAX RPC) • Aceder a Web Services através de uma chamada a um procedimento remoto (RPC) baseado no SOAP • Chamar métodos do Web Service num ambiente distriuído 3. Desenvolvimento de Aplicações Web - Web Services
Java APIs • Java API for XML Messaging (JAXM) • Construir e enviar mensagens orientadas por documentos baseados no SOAP (mais propriamente no SOAP for Messaging) • Java API for XML Processing (JAXP) • Processar documentos XML (usado para retornar este tipo de documentos como resposta de um Web Service) 3. Desenvolvimento de Aplicações Web - Web Services
Tecnologias Java usada para Web Services • Sun Microsystems: • Sun ONE Developer Platform: ambiente sofisticado de desenvolvimento baseado em Java e no J2EE que inclui o Java WSDP Outras: • Apache • Jakarta-Tomcat • Apache-Soap • Jakarta-AXIS (3ª geração de SOAP da Apache) • Ant 3. Desenvolvimento de Aplicações Web - Web Services
Projecto Open Source Dividido em : Plataforma Eclipse JDT (Java Development Tools) PDE (Plugin Development Environment) IDE Eclipse 4. IDE Eclipse
IDE Eclipse • IDE que “serve para tudo e para nada em particular” • Serve fundamentalmente para desenvolver IDEs, facilmente, para quaisquer linguagens de programação, editores de texto, etc 4. IDE Eclipse
IDE eclipse • É permitido adicionar novas funções(ferramentas) ao IDE através de plugins que são programados em Java • Os plugins são desenvolvidos de forma modular de modo a permitir a determinados plugins utilizarem as funções de outros 4. IDE Eclipse
Interface Gráfica • A interface gráfica do Eclipse é programada utilizando o JFace e o SWT, logo o UI (interface com o utilizador) é igual em qualquer sistema operativo. 4. IDE Eclipse
JDT (Java Development Tools) • Conjunto de Plugins que adicionam ao IDE a capacidade de desenvolver aplicações Java • Permite colorir a sintaxe do programa, gravar informações do debugger e do compilador, ter a hierarquia de ficheiros organizada em árvore entre outras opções 4. IDE Eclipse
JDT (Java Development Tools) • Dividido em 2 grupos: • Plugins de UI (interface com o utilizador) • Plugins não-UI (plugins não relacionados com a interface com o utilizador) • Esta divisão permite a utilização do Eclipse em sistemas que não sejam baseados em interfaces gráficas com o utilizador. 4. IDE Eclipse
Eclipse Web Tools Platform Project • Recursos humanos envolvidos no projecto (pcm) • Constituição do projecto (sub-projectos e componentes) • Infra-estrutura • Desenvolvimento 5. Eclipse Web Tools Platform Project
Eclipse Web Tools Platform Project • Plataforma baseada na plataforma mãe da eclipse • Fornece ferramentas no campo da Web (baseadas em Java) • Tool suites 5. Eclipse Web Tools Platform Project
Quadros do projecto: • Pcm (comissão gestora do projecto) • Utilizadores Passivos • Utilizadores activos (construtores/programadores) • Coordenadores 5. Eclipse Web Tools Platform Project
Infra-estrutura: • bug database • source repository(depósito de código) • Website • Forum genérico (general mailing lists) • Forum de sub-projecto (subproject mailing lists) • Forum de componente (component mailing lists) 5. Eclipse Web Tools Platform Project
Desenvolvimento: • Controlado pela pcm • Etapas e prazos • Reuniões e gestão de conflitos 5. Eclipse Web Tools Platform Project
Conclusões do trabalho efectuado: • A plataforma J2EE revela-se ideal para desenvolver aplicações empresariais; • A plataforma Eclipse é um IDE concebido para desenvolver variadas aplicações, desde páginas web até aplicações Java, em C ou C++; • A plataforma Web Tools Platform Project, uma das várias plataformas da Eclipse, destaca-se pela disponibilização de inúmeras ferramentas vocacionadas para o fácil desenvolvimento de “tool suites” e “web tools”. LEIC - Engenharia de Software