<Insert Picture Here> Oracle Jdeveloper & ADF Overview Gustavo Michel Torres Platform Technologic Solutions Oracle JDeveloper/ADF gustavo.torres@oracle.com
Agenda do evento <Insert Picture Here> Roadmap para Desenvolvimento (Forms/Designer/Jdeveloper) Arquitetura Oracle Fusion Oracle Jdeveloper Oracle ADF Oracle JHeadstart (extra) Conclusão
Roadmap para Desenvolvimento <Insert Picture Here>
Arquitetura Oracle Fusion <Insert Picture Here>
Como facilitar o desenvolvimento? Oracle JDeveloper Ferramenta única de desenvolvimento Oracle ADF Framework de desenvolvimento Java EE 5 SOA Web 2.0
Oracle JDeveloper <Insert Picture Here>
Oracle JDeveloper Completo Ciclo de desenvolvimento completo. Ferramenta única para Java, Web Services, XML, DB, SOA, etc. Standard Suporte aos padrões de mercado Cross platform (AS and DB) Produtivo Desenvolvimento visual e declarativo Auxilio a codificação Oracle Application Development Framework (Oracle ADF) Estratégico A ferramenta para Fusion Middleware A ferramenta para Oracle Database A ferramenta Oracle Fusion Applications Gratuito
Suporte Completo ao Ciclo de Desenvolvimento
UML Diagrama de Classes Transformadores Diagrama de Seqüência Diagrama de Use Case Diagrama de Atividades
Desenvolvimento de Banco de Dados Modelagem de banco de dados Criação de objetos Database browser SQL worksheet SQL tuning PL/SQL editor PL/SQL debugging Publish PL/SQL based Web services
Desenvolvimento Wireless JSF baseado em wireless Editor WYSIWYG para PDA e Telnet Filtro de componentes baseados no dispositivo Simulador de dispositivo
Desenvolvimento SOA / BPEL Construção BPEL Orquestração Web Services Drag and Drop Sincronização de Código
<Insert Picture Here> Oracle ADF Application Development Framework
Oracle ADF Framework Java EE Completo Implementa melhores práticas do padrão Java EE Model-View-Controller (MVC) Design Pattern Rich Clients Web and Wireless Clients Controller Model Business Services Foco no negócio, não em programação de baixo nível Consolidação e evolução de frameworks anteriores
JDeveloper Produtividade baseada em padrões Desktop Browser-Based ADF Swing Office JSP JSF ADF Faces / DVT View Struts JSF/ADF Task Flow Controller ADF Bindings (JSR 227) Model Java EJB TopLink BAM BPEL Web Services ADFbc BI Essbase Portlets Business Services Relational Data XML Data Legacy Data Packaged Apps Data Services
Arquitetura Oracle ADF Desenvolvimento Fusion Desktop Browser-Based ADF Swing Office JSP JSF ADF Faces / DVT View Struts JSF/ADF Task Flow Controller ADF Bindings (JSR 227) Model Java EJB TopLink BAM BPEL Web Services ADFbc BI Essbase Portlets Business Services Relational Data XML Data Legacy Data Packaged Apps Data Services
Oracle Application Development Framework (ADF) Framework JavaEE completo Declarativo Produtivo Orientado a serviço Standards Framework de desenvolvimento do Oracle Fusion
Oracle ADF Framework Java Corporativo Agrega valor e simplifica Java EE Soluções para: Binding Componentes UI e framework Controller Desenvolvimento de web services Validação declarativa Segurança declarativa Customização Facilidade de desenvolvimento
ADF em detalhes ADF Business Components ADF Faces Components ADF Controller ADF Binding
Oracle ADF Business Components (MVC) <Insert Picture Here>
ADF Business Components Framework que simplifica o desenvolvimento de business services Java EE para desenvolvedores familiarizados com ferramentas 4GL, desenvolvimento declarativo e banco de dados relacionais Acesso aos dados simplificado Validações elementares e regras de negócio Usa data views baseadas em SQL Separa regras de negócio da visão de dados Implementação de regras de negócio Facilidade de customização
Facilidades ADF BC Query By Example Lista de valores Campos calculados Validação declarativa Controle de paginação Controle de transação Mecanismos de lock Gerenciamento de estado Realizado declarativamente sem código!
Oracle ADF Faces (MVC) <Insert Picture Here>
Java Server Faces (JSF) Desenvolvimento Web Simplificado Server side UI generation Baseado em componentes, não em mark-ups Manipulação de eventos e estados Diversidade de clientes não apenas HTML Projetado para utilização em ferramentas Qualquer perfil de desenvolvedor Java EE standard
Componentes Oracle ADF Faces Mais de 100 componentes JSF Comportamento Ajax Partial Page Rendering Validação a nível de cliente Dialog framework Componentes avançados para tabelas e árvores Tecnologia iframe Produção desde janeiro/06
ADF Faces Rich Client 11g Mais de 100 componentes JavaServer Faces Ajax enabled Componentes de visualização de dados (gráficos e mapas) Drag-and-drop framework Dialog & popup framework Navigation menu framework Partial page rendering Active data framework Advanced data streaming API JavaScript completa
ADF Faces Rich Client Exemplos de Componentes
ADF Faces Rich Client Exemplos de Componentes
ADF Faces Rich Client Exemplos de Componentes
Reusabilidade no desenvolvimento JSF Templates para tecnologia JavaServer Faces Definição de padrões de páginas Page Fragments Desenvolvimento de áreas reusáveis Page Regions Construção de uma página através de page fragments Components Declarativos Componentes complexos prontos para uso
Oracle ADF Controller (MVC) <Insert Picture Here>
ADF Controller - Estendendo o JSF Controller Configuração declarativa Características out-of-the-box avançadas Trains: seqüência de páginas Save for later abandona transações incompletas Bookmarking declarativo Gerenciamento de transação declarativo Suporte declarativo ao botão back Suporte declarativo ao tratamento de exceção Segurança declarativa baseada em JAAS
ADF Controller Declarativo Bounded Task Flow Task Flow Private Implementation and State Page region
ADF Controller Declarativo Transaction (New or Inherit) Save for Later Back Button Support Bookmarkable Declarative Trains Declarative Commit / Rollback
Oracle ADF Data Binding <Insert Picture Here>
ADF Model - Data Binding ADF Model JSR-227 Data Controls Interface Orientada a Serviços Abstrai implementação de clientes Fraco acoplamento entre serviços e aplicações Maior Reusabilidade Discover & Share Services Maior Produtividade Drag and Drop Data Binding
Jdeveloper & ADF Conclusão Produtivo Abordagem de desenvolvimento declarativa e visual Oracle ADF framework completo para aplicações SOA Completo Java, SOA, Database, WebCenter/Portlets, XML, Web services Full Development Life Cycle Standards com Opção Padrões de Mercado Escolha da plataforma de desenvolvimento Escolha da abordagem de desenvolvimento Escolha de tecnologias
Oracle JHeadstart <Insert Picture Here>
O que é JHeadstart? Extensão do Jdeveloper para automatização de tarefas ADF via templates Toolkit de desenvolvimento em ADF Constrói sobre arquitetura de runtime ADF Integração completa com design ADF Melhores práticas ADF out-of-box Desenvolvimento declarativo Gera aplicações ADF completas Conceito semelhante ao Forms Generator do Oracle Designer Acelera migração de aplicações Oracle Forms em ADF
JHeadstart Principais Componentes JHeadstart Application Generator (JAG) Geração de aplicação usando melhores práticas JHeadstart Utilities Automatização de tarefas ADF Controle de qualidade JHeadstart Runtime Componentes reutilizáveis para funcionalidade complexas Implementação de melhores práticas JHeadstart Forms2ADF Generator Criação de aplicação ADF baseada em definições forms JHeadstart Developer s Guide
JHeadstart Application Generator <Insert Picture Here>
JHeadstart Application Generator (JAG) Geração de ADF Faces JSPX Pages, Page Fragments and Regions Geração de (un)bounded task flows Geração PageDefinition XML files (data bindings) NÃO gera código Java! JAG orientado por Arquivo Application Definition em XML, criado e editado através de Wizard dentro do JDeveloper Velocity Generator Templates Aplicação gerada é 100% customizável
JHeadstart Application Generator (JAG) Funcionamento Application Definition New JHeadstart Service Defintion JHeadstart Application Generator ADF Business Components Model ADF Model Data Bindings Data Controls Business Services JSF+ADFc Controller JSF JSP ADF Faces View
Demonstração JHeadstart Application Generator
Exemplo de página JHeadstart
Exemplo de página JHeadstart
Exemplo de página JHeadstart
Exemplo de páginas JHeadstart
Exemplo de páginas JHeadstart
JHeadstart Forms2ADF Generator <Insert Picture Here>
JHeadstart Forms2ADF Generator Gera ADF Business Components beseado nos blocos Forms ADF BC Entity Objects criados para tabelas utilizadas ADF BC View Objects criados para blocos and LOV queries Parâmetros de consulta para referências :block.item LOV no ADF criado para cada LOV / Record Group ADF BC Application Module criado para cada form Extrai a interface de usuário do forms para o JHeadstart Application Definition Groups criados para cada bloco Group Items criados para cada item no bloco (Stacked) region containers e regions criados baseados na localização de itens em canvas (tabbed ou não) e dentro de framed graphics. Domínios criados baseados nos allowable values do forms Lógica PL/SQL copiada como documentação
JHeadstart Forms to ADF Generator Funcionamento Form (.fmb) Form (.fmb) Form Form `` (.fmb) JHeadstart Forms2ADF Generator Application Definition JHeadstart Application Generator ADF Business Components Model ADF Model Data Bindings Data Controls Business Services JSF+ADFc Controller JSF JSP ADF Faces View
Demonstração Forms2ADF Application Generator
Executando Forms2ADF Generator
Executando Forms2ADF Generator
Executando Forms2ADF Generator
Executando Forms2ADF Generator
Executando Forms2ADF Generator
Executando Forms2ADF Generator
Executando Forms2ADF Generator
ADF Business Components gerados
Application Definition gerado
Tela Oracle Forms
Página ADF gerada
Tela Oracle Forms
Página ADF gerada
Tela Oracle Forms
Página ADF gerada
Tela Oracle Forms
Página ADF gerada
E a lógica PL/SQL? Lógica PL/SQL não é autimaticamente migrada para Java Preferência por uma arquitetura multi-camada robusta (ADF MVC) a uma migração PL/SQL Analisar a lógica Determinar em que camada deve ser implementada Determinar com implementá-la Application Definition Editor mostra triggers a nível de form, bloco e program units Overview de todo lógica PL/SQL Abilidade para mover lógica para o banco, para ADF BC ou JSF managed beans
Código PL/SQL no Application Definition Editor
JHeadstart Resumo JHeadstart incorporpora melhores práticas no desenvolvimento de aplicações ADF Prototipação rápida para acelerar fase de análise, e para identificar os requerimentos dos usuários Tarefas repetitivas no desenvolvimento são automatizadas. JHeadstart reforça padrões de interface e desenvolvimento Definições de aplicações forms podem ser reutilizadas facilitando a transição para Java Facilita o aprendizado do ADF 11.