Manual Demoiselle Wizard CETEC/CTCTA

Documentos relacionados
Utilização do Sistema FaciliTiss. Guia de Resumo de Internação

Manual de Utilização do Sistema FaciliTiss Guia de Consulta

Tutorial. Associação de Professor na Classe

SISTEMA DE GESTÃO PEDAGÓGICA Manual do Professor

Continuação... Criando a Interface e adiante

UNIMED SANTA BARBÁRA D OESTE AMERICANA E NOVA ODESSA. Manual Secretária EMED Manual versão 1.1

MANUAL DE USUÁRIO. Versão 1.0 Servidor

Assina Web S_Line Manual de Uso

MANUAL DO USUÁRIO Subunidade Acadêmica

SISTEMA CERTORIGEM PERFIL EXPORTADOR

PROCEDIMENTO DE EXPORTAÇÃO A PORTAIS IMOBILIÁRIOS

Fixo (41) Vivo (41) Tim (41) Claro (41) OI (41) Sistema Descomplicado CNPJ

UNIVERSIDADE FEDERAL DE PERNAMBUCO Av. Prof. Moraes Rego, 1235, Cidade Universitária, Recife PE, CEP: Fone: (81)

SISTEMA UNIFICADO DE ADMINISTRAÇÃO PÚBLICA SUAP

Primeiros passos das Planilhas de Obra v2.5 Instalação, configuração e primeiros passos para uso das planilhas de obra

Sistema PCMalotes Developed by: Bruno Lacerda All copyrights reserveds for Prado Chaves

Bem-vindo ao Manual de Navegação do Portal do Fornecedor Vale.

Sumário 1. Inicializando o Sistema Arquitetura do Sistema Consulta Rápida de Veículos Informações Gerais...

GUIA DO USUÁRIO Avaliaext Avaliação Externa

Ao selecionar o seu curso, aparecerá a página principal contendo as informações e as atividades disponíveis.

NOVO PORTAL DA UFS EDITOR

Gerabyte AFV (Automação de Força de Venda) Manual do Aplicativo

PROTOCOLO ONLINE. Após realizar o login, na tela inicial, o aluno irá clicar em Educacional, para visualizar todas as funcionalidades acadêmicas.

MANUAL DE INSTRUÇÕES CLARO TORPEDO EQUIPE

TUTORIAL DE INSTALAÇÃO E USO DO OWL-S COMPOSER utilizando o Eclipse Galileo Modelling Tools

Demoiselle Tutorial Módulo 1 Arquitetura

Manual Converte-MV S_Line

SIMAR UNIVERSIDADE DE BRASÍLIA. Centro de Informática CPD. SIMAR Sistema de Compras de Materiais

Inventário Rotativo (Coletor de Dados)

Solicitação de Serviço

Como criar usuários do Painel

Manual do Software

Boletim Técnico. Plano de Desenvolvimento Individual (PDI) Desenvolvimento/Procedimento. Produto : Totvs Gestão de Pessoas Versão 12.1.

Manual Telemetria - Horímetro

LISTAR MEMORANDOS RECEBIDOS

UNIVERSIDADE FEDERAL DO VALE DO SÃO FRANCISCO UNIVASF SECRETARIA DE TECNOLOGIA DA INFORMAÇÃO STI DEPARTAMENTO DE SISTEMAS DE INFORMAÇÕES

Bloco G - Registros 0500 e Janeiro/ 2011

SCC: Sistema de Controle de Chamado: Módulo Cliente

ITQ InForm Recebimentos

UNIVERSIDADE FEDERAL DO VALE DO SÃO FRANCISCO UNIVASF SECRETARIA DE TECNOLOGIA DA INFORMAÇÃO STI DEPARTAMENTO DE SISTEMAS DE INFORMAÇÕES

Procedimentos para Atualização Sisloc

Tutorial para orientar novos usuários do site unifei.edu.br a encontrar e editar conteúdos no site

Fale Conosco MT Última Atualização 23/07/2015

Processo de Controle

MANUAL INSTALAÇÃO E OPERAÇÃO SOFTWARE GUARDIÃO. Sistemas de Alarme de Incêndio Wireless DF0023-G2-23/DF0023-G3-23 SISTEMAS DE SEGURANÇA

Plataforma Indicadores de Belo Monte

MANUAL DE INSCRIÇÃO NOS EDITAIS DE ASSISTÊNCIA ESTUDANTIL

Sankhya Web Connection. Versão: 02 Criado em: 28/03/2017

Gestão Unificada de Recursos Institucionais GURI

SUMÁRIO 1. APRESENTAÇÃO CND CND PORTAL DE RELACIONAMENTO Cadastro CND Painel de Controle

Gerabyte AFV (Automação de Força de Venda) Manual do Aplicativo

MANUAL. Certificado de Origem Digital PERFIL EXPORTADOR. Versão

LINX POSTOS AUTOSYSTEM

Este manual contém as principais funcionalidades e explicações a respeito do funcionamento do portal de vendas PULVITEC.

Manual do painel administrativo. Site Instituto de Oncologia do Vale IOV

Endereço: (Mozilla Firefox ou Google Chrome, atualizados em suas últimas versões.)

SGCD 2.0 Sistema Gerenciador de Conteúdo Dinâmico

Manual de atualização para uso do xml versão 3.10

Sistema de Gestão de Recursos Humanos

DOCUMENTAÇÃO SISTEMA DE ADMINISTRAÇÃO DE CONSULTÓRIO MÉDICO

Manual do Usuário SinFAT Web

1.5. Interface inicial (Ambiente de trabalho TDMAx Web

Para efetuar a configuração de s no painel, acesse o cpanel a partir do link abaixo:

Figura 1 Tela principal da disciplina

LATO SENSU COORDENADOR

1 - O módulo Administração

Introdução a Tecnologia da Informação

Manual. S.I.A Sistema Integrado de Avaliação. PARÂMETROS PE (Parâmetros Curriculares)

Academia - Gestão acadêmica: Externos. Manual do Usuário DT / APC

BitNota Eletrônica Gerenciador para Nota Fiscal Eletrônica 2.0 Manual Versão 1.0

Manual Espelho de NF para Serviços

MANUAL VTWEB CLIENT URBANO

2015 GVDASA Sistemas Portal da Secretaria

Aqui são exibidas a data e hora do servidor como referência para o período de inscrição. Aba Buscar para pesquisar concursos existentes.

IDES E PROGRAMAÇÃO. Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias

Manual do Tutor PIRELLI TYRE CAMPUS

LINX POSTOS AUTOSYSTEM

TUTORIAL APPY PIE CADASTRO

Painel Administrativo Westlock

Card Tree Creator. Um Sistema para a criação de árvores de cartões.

Sumário. 2 Primeiro acesso/trocar de senha 8

Índice. Parte I Informações Iniciais 1 Sobre o documento. Apresentação Home. Parte II. Nota Premiada. Cadastro. Entrar. Sorteio. Dúvidas.

Manual de navegação ao Portal AMS TISS Auditores. Endereço:

Tutorial de instalação e configuração do Software Giga VMS

Seções de aula (Seminários)

BROFFICE.ORG IMPRESS

Manual de utilização do CSPSNet Versão 3.0

[Skype for Business] - [Skype for Business] Versão Online

SMS: Envio Coletivo de Mensagem Passo 1: Remetentes

Transcrição:

Manual Demoiselle Wizard CETEC/CTCTA

Histórico de Versões Data Versão Descrição Autor Revisor 07/05/2009 0.1 Mário Costa Flávio Lisboa 24/06/2009 0.2 25/06/2009 1.0 30/06/2009 1.1 12/01/10 1.1.1 07/05/10 1.1.1 Criação do documento Correção da URL do update site Inclusão de exemplo de aplicação Finalização do exemplo de aplicação Revisão para versão 1.1.1 do Wizard Atualização de URLs conforme reestruturação após unificação dos projetos. Aprovado por Flávio Lisboa Flávio Lisboa Flávio Lisboa Emerson S. Saito Rodrigo HJORT 2

Sumário 1.Visão Geral...4 1.1. Pré-requisitos...4 1.1.1. Do usuário...4 1.1.2. Do ambiente...4 1.2. Instalação...4 1.3. Criar Projeto com Maven (m2eclipse)...4 1.3.1. Criar Projeto sem plugin Maven....5 1.3.2. Exemplo de Estrutura do Projeto...6 1.4. Estrutura de Pacotes e Arquivos de Configuração...6 2.Configurar Projeto...9 2.1. Aba Configuração...9 2.1.1. Descrição dos Campos...10 2.1.2. Descrição das Alterações...10 2.2. Configurações do Hibernate...10 2.2.1. Descrição dos Campos...11 2.2.2. Descrição das alterações...12 2.3. JPA (Java Persistence API)...12 2.3.1. Descrição dos campos...13 2.3.1. Descrição das alterações...14 2.4. Cadastro de Mensagens...14 2.4.1. Descrição dos Campos...15 2.4.2. Descrição das Alterações...15 3. Editar Projeto...16 3.1. Geração de DAOs...16 3.1.1. Descrição dos Campos...17 3.1.2. Descrição das Alterações...18 3.2. Geração de Business Controllers...20 3.2.1. Descrição dos Campos...21 3.2.2. Descrição das Alterações...21 3.3. Geração de Regras de Navegação...22 3.3.1. Descrição dos Campos...23 3.3.2. Descrição das Alterações...23 3.4. Geração de Managed Beans...24 3.4.1. Descrição dos Campos...25 3.4.2. Descrição das Alterações...26 3.5. Geração de Fachadas...27 3.5.1. Descrição dos Campos...28 3.5.2. Descrição das Alterações...28 3.6. Geração de Testes Unitários...30 3.6.1. Descrição dos Campos...31 3.6.2. Descrição das Alterações...31 3.7. Criar páginas...32 3.7.1. Descrição dos Campos...32 3.7.2. Cadastro da Página de Listagem...33 3.7.2.1. Descrição dos Campos...34 3.7.2.2. Descrição das Alterações...35 3.7.3. Cadastro da Página de Visualização...35 3.7.3.1. Descrição dos Campos...36 3.7.3.2. Descrição das Alterações...37 3

3.7.4. Cadastro da Página de Edição...37 3.7.4.1. Descrição dos Campos...37 3.7.4.2. Descrição das Alterações...38 4

1.Visão Geral 1 Demoiselle Wizard é uma ferramenta que visa auxiliar o desenvolvimento de aplicação WEB que utilizam o Demoiselle Framework. A ideia do Wizard é apoiar na configuração, procurando gerar o código básico comum de partes da aplicação, deixando o foco do desenvolvedor nas regras de negócio. 1.1. Pré-requisitos Como toda ferramenta de software, o Demoiselle Wizard está baseado em alguns conceitos e produtos que não serão abordados neste manual. 1.1.1. Do usuário Conhecimento no uso da plataforma Eclipse (http://www.eclipse.org/). Desenvolvimento JEE (http://java.sun.com/javaee/). Padrões de projeto em Java (http://java.sun.com/blueprints/corej2eepatterns/patterns/index.html) 1.1.2. Do ambiente JDK 1.5 ou superior (http://java.sun.com/javaee/downloads/index.jsp). Eclipse IDE, versão 3.4.2 ou superior (http://www.eclipse.org/downloads/). AspectJ Development Tools for Eclipse (http://download.eclipse.org/tools/ajdt/34/update) Recomendados: Maven Integration for Eclipse (http://m2eclipse.sonatype.org/update/) JBoss Tools (http://download.jboss.org/jbosstools/updates/stable) 1.2. Instalação A instalação e atualização do Demoiselle Wizard será através de um updatesite do Eclipse disponibilizado no site: http://demoiselle.sourceforge.net/wizard/updatesite/ Eclipse 3.4.x Menu: Help Software Updates Available Software Add Site Eclipse 3.5.x Menu: Help Install New Software Add... 1.3. Criar Projeto com Maven (m2eclipse) 1 Nesta opção, o projeto será criado pelo plugin Maven (ver manual do Demoiselle: http://demoiselle.svn.sourceforge.net/viewvc/demoiselle/trunk/docs/others/tutorial/demoiselle -Tutorial-Modulo01-Arquitetura-Laboratorio.pdf). O projeto irá conter um conjunto de classes, pacotes, diretórios e arquivos de configuração e um arquivo de configuração do Maven, o pom.xml. Este arquivo irá prover informações das bibliotecas que o projeto dependerá. 5

Ao finalizar a operação, o plugin Maven irá criar o projeto com a estrutura básica da aplicação. O Wizard dá opção para o usuário de transformar um projeto java em uma aplicação do tipo Demoiselle. Através do item de menu "Demoiselle - Adicionar/Remover características do Demoiselle Framework", o usuário adiciona ou remove as características necessárias para identificar a aplicação como uma aplicação Demoiselle. Mesmo através do M2Eclipse, o desenvolvedor deverá reconhecer este projeto como um projeto Demoiselle: Selecionar o projeto e clicar com o botão direito do mouse para ativar o menu suspenso, depois em "Demoiselle Adicionar/remover características do Demoiselle". Figura 1.3 Adicionando características do Demoiselle Framework IMPORTANTE: O usuário só tem acesso as demais funcionalidades do Wizard se a aplicação que ele estiver editando possuir características de uma aplicação Demoiselle. Utilize esta funcionalidade para adicionar estas características. U 1.3.1. Criar Projeto sem plugin Maven. 1 Caso opte por não utilizar o plugin Maven, que é recomendado pelo Demoiselle, é possível criar um projeto Java no ambiente Eclipse e depois transformá-lo em um projeto Demoiselle para utilização do Wizard. Neste link está um exemplo: http://demoiselle.svn.sourceforge.net/viewvc/demoiselle/trunk/docs/others/tutorial/de moiselle-tutorial-modulo01-arquitetura-anexo-i.pdf 6

M 1.3.2. Exemplo de Estrutura do Projeto Figura 1.6 Projeto Criado 7

11.4. Estrutura de Pacotes e Arquivos de Configuração br.gov.demoiselle.projeto.bean Pacote onde serão armazenadas as classes dos POJOs da aplicação. br.gov.demoiselle.projeto.business Pacote onde serão armazenadas as interfaces dos Business Controllers da aplicação. br.gov.demoiselle.projeto.business.implementation Pacote onde serão armazenadas as implementações dos Business Controllers da a aplicação. br.gov.demoiselle.projeto.config Pacote onde serão armazenadas as classes de configuração br.gov.demoiselle.projeto.constant Pacote onde serão armazenadas as classes de constantes da aplicação. br.gov.demoiselle.projeto.message Pacote onde serão armazenadas as classes de mensagens da aplicação. br.gov.demoiselle.projeto.persistence.dao Pacote onde serão armazenadas as interfaces dos DAOs da aplicação. br.gov.demoiselle.projeto.persistence.dao.filter Pacote onde serão armazenadas as classes dos filtros de dados da aplicação. br.gov.demoiselle.projeto.persistence.dao.implementation Pacote onde serão armazenadas as implementações dos DAOs da aplicação. br.gov.demoiselle.projeto.view.managedbean Pacote onde serão armazenadas as implementações dos Managed Beans da aplicação. b br.gov.demoiselle.projeto.view.report Pacote onde serão armazenadas as implementações dos relatórios da aplicação. A seguir a descrição de alguns diretórios e arquivos de configuração da aplicação. Nome do Arquivo/Diretório Finalidade framework.properties Arquivo de configuração do projeto Descrição Este arquivo contém variáveis de configuração do projeto, ele pode ser editado através do wizard "Configurar projeto" do Wizard. Nome do Arquivo/Diretório Finalidade src/main/resources/hibernate.cfg.xml Arquivo de configuração do Hibernate Descrição 8

Este arquivo contém as variáveis de configuração do Hibernate, ele também será editado através do wizard "Configurar projeto" do Wizard. Nome do Arquivo/Diretório Finalidade src/main/resources/hbm Diretório de configuração do Hibernate Descrição Este diretório irá armazenar os arquivos de mapeamento HBM do Hibernate, isso se a aplicação utilizar HBM, caso contrário este diretório não será utilizado. Nome do Arquivo/Diretório Finalidade src/main/webapp/web-inf/faces-config.xml Arquivo de configuração JSF Descrição Este arquivo contém todas as informações sobre os Managed Beans e as regras de navegação. Será editado ao longo da fase "Editar projeto". Nome do Arquivo/Diretório Finalidade src/main/webapp/web-inf/web.xml Arquivo de configuração da aplicação WEB Descrição Este arquivo possui informações de como a aplicação Web deverá se comportar, ele já vem pré configurado e recomenda-se somente aos usuários mais experiente alterá-lo. Nome do Arquivo/Diretório Finalidade.demoiselle.xml Arquivo de configuração do Wizard Descrição Este arquivo possui informações de configuração do Wizard. Nome do Arquivo/Diretório Finalidade pom.xml Arquivo de configuração do Maven Descrição Este arquivo possui informações de configuração do Maven. 9

2.Configurar Projeto Neste Item do Wizard o usuário poder escolher e editar as configurações básicas do projeto, as informações para a conexão do Hibernate e cadastrar as mensagens do projeto. Segue adiante a explicação deste mecanismo de funcionamento do Wizard e em seguida links para as explicações de ambas as telas. A funcionalidade é ativada pelo menu de projeto do Eclipse, selecionando o projeto e clicando com o botão direito do mouse. Demoiselle Configurar projeto. 10

22.1. Aba Configuração. C O Framework Demoiselle oferece ao desenvolvedor mecanismos que facilitam a manutenção de variáveis de configuração da aplicação. Para auxiliar, o Wizard oferece suporte na criação e edição destas variáveis (exceto as variáveis de sistema). O Wizard busca no projeto as classes que implementam a interface IConfig (vide manual do Demoiselle) e disponibiliza para alteração as variáveis destas classes. Figura 2.1 - Tela de Configuração das variáveis do projeto 2.1.1. Descrição dos Campos Classes de configuração: O campo indica qual classe que implementa IConfig terá suas variáveis editadas. Propriedades: A tabela propriedades lista todas as variáveis da classe que estão anotadas por @ConfigKey. Clicando duas vezes na linha referente a propriedade, o usuário pode alterar o valor desta variável. 2.1.2. Descrição das Alterações Ao final das operações, o Plugin irá criar ou alterar as propriedades nos arquivos xml ou properties. 11

2.2. Configurações do Hibernate Irá criar ou configurar os arquivos necessários para uso do Hibernate como camada de persistência. Figura 2.2 - Tela de Configuração do Hibernate 2.2.1. Descrição dos Campos Conexão: O campo tipo de conexão define o modo que a aplicação irá acessar o banco de dados, existe dois tipos de acesso, via Data Source e via Driver, os demais campos da aplicação estarão disponíveis conforme a escolha deste. Show SQL: O campo Show SQL indica se o Hibernate deve logar ou não os SQLs executados no banco. Format SQL: O campo Format SQL indica se o Hibernate deve formatar ou não os SQLs executados no banco. Banco de Dados: O campo Banco de Dados indica qual o banco será acessado pelo Hibernate. Os tipos são pré-definidos, caso o usuário deseje incluir algum outro deve contatar a equipe responsável pelo Demoiselle. Nome do Data Source: O campo Nome do Data Source indica o Alias do Data 12

Source que será utilizado. Este campo só estará disponível se o tipo de conexão for Data Source. Dialect: O campo Dialect indica qual o dialeto será utilizado para acessar o banco de dados. Este campo é somente leitura, ele será preenchido de acordo com o Banco de Dados selecionado. URL: Também disponível somente no tipo Driver, a URL indica o caminho do banco de dados da aplicação. Para cada banco de dados cadastrado existe uma URL padrão na qual o usuário deve trocar os campos: BD_APLICACAO e localhost (se não for acessar um banco local). Usuário: O campo usuário define o login da aplicação no banco de dados. Somente para o tipo driver. Senha: O campo senha define a senha do usuário da aplicação no banco de dados. Somente para o tipo driver. Auto update HBM: O campo auto update indica se o Hibernate irá atualizar automaticamente o banco de dados de acordo com mudanças no mapeamento cadastrado. Tabela de mapeamento de Hibernate: Há dois tipos de mapeamento do Hibernate, um via HBM e outro via anotações nos POJOs. O primeiro modo aparece automaticamente todas as opções na tabela, devendo o usuário marcar os HBMs necessários. Os POJOs devem ser inseridos através do botão Adicionar POJO. Para remover qualquer item basta retirar o check da primeira coluna. 2.2.2. Descrição das alterações Ao salvar as alterações o Wizard irá editar o arquivo de configuração do Hibernate com as alterações feitas pelo usuário. 13

32.3. JPA (Java Persistence API) A tela de configuração do JPA é dividida em três partes, são elas: Lista de Persistence Units já cadastradas; os botões adicionar, remover e editar; e a área de edição da Persistence Unit. Clicando em algum item da lista de Pus, o usuário poderá observar, na área de edição, os dados da Persistence Unit selecionada e caso tenha a necessidade de alterar algo deverá iniciar a edição deste clicando no botão Editar. A adição e remoção de Persistence Units são feitas através dos botões Adicionar e Remover respectivamente. após o término da adição/edição/remoção das Persistence Units o usuário deverá salvar as alterações (botão Salvar da área de edição) ou cancelar (botão Cancelar da área de e edição). Figura 2.3 - Tela de Configuração do JPA 2.3.1. Descrição dos campos Nome O campo nome indica o nome da Persistence Unit a ser criada/editada. Provider O campo Provider abre as opções de implementação JPA para a Persistence Unit a ser criada/editada. O Wizard prove suporte aos seguintes Providers: "JPA Provider", Hibernate Provider e "Oracle Toplink Provider" 14

Tipo O campo tipo indica o tipo da Persistence Unit a ser criada/editada. As opções são: JTA ou Recurso Local Data Source O campo Data Source (opcional) indica o nome do Data Source associado a Persistence Unit a ser criada/editada. O não preenchimento deste campo indicará que a PU não possui Data Source. Propriedades A Tabela Propriedades indica todas as tuplas chave, valor das propriedades que serão cadastradas para cada PU. Tabela de mapeamento de Hibernate Há dois tipos de mapeamento do JPA, um via resources e outro via classes Pojos anotadas. O primeiro modo aparece automaticamente todas as opções na tabela, devendo o usuário marcar os recursos necessários. Os Pojos devem ser inseridos através do botão Adicionar Pojo. Para remover qualquer item basta retirar o check da primeira coluna. 2.3.1. Descrição das alterações Ao salvar as alterações, o Wizard irá editar o arquivo de configuração do JPA com as alterações feitas pelo usuário. 15

42.4. Cadastro de Mensagens As mensagens da aplicação são armazenadas em classes do tipo enum. Existem três tipos de mensagens: de Erro; Informação; ou de Erro Fatal. Para cada tipo, existirá uma classe associada e todas as mensagens do tipo serão armazenadas nesta classe. A figura 2.3 exibe a tela de cadastro. Figura 2.4 Tela de Cadastro de Mensagens Conforme podemos observar na figura 2.4, a tela de Mensagem é dividida em três partes, são elas: Lista das Mensagens já cadastradas; os botões adicionar, remover e editar; e a área de edição da Mensagem. Clicando em algum item da lista de Mensagens, o usuário poderá observar, na área de edição, os dados da Mensagem selecionada e caso tenha a necessidade de alterar algo deverá iniciar a edição desta clicando no botão Editar. A adição e remoção de Exceções são feitas através dos botões Adicionar e Remover, respectivamente. Após o término da adição/edição das Exceções, o usuário deverá salvar as alterações (botão Salvar da área de edição) ou cancelar (botão Cancelar da área de edição). O campo pacote indicará onde o pacote onde serão criadas as classes que irão armazenar as mensagens. Como sugestão, o framework traz o pacote: br.gov.demoiselle.projeto.message". IMPORTANTE : Todas as alterações feitas só serão aplicadas após o usuário clicar no 16

botão aplicar da tela principal ou no botão Finish do wizard. Após a edição das Mensagens, a seguinte mensagem deverá aparecer na tela: " Mensagens cadastradas com sucesso. 2.4.1. Descrição dos Campos Nome O campo nome serve para identificar a mensagem na classe. Mensagem O campo mensagem é o conteúdo da mensagem. Tipo O campo tipo da mensagem identifica qual a severidade da mensagem (ERROR; FATAL; ou INFO). 2.4.2. Descrição das Alterações Ao salvar as alterações, o Plugin irá criar ou editar a(s) classe(s) que possui(em) alguma mensagem associada. As classes terão os seguintes nomes: ErrorMessage, FatalMessage e InfoMessage e sempre implementam a interface IMessage. 17

3. Editar Projeto Esta funcionalidade auxilia na edição do projeto permitindo desenvolver as camadas da aplicação de acordo com o padrão Demoiselle. O processo começa na camada DAO e passa pelo Business Controller, Managed Bean, Regras de Navegação, as Fachadas até chegar aos testes unitários. Ativando o Meno de Edição do Projeto. 3.1. Geração de DAOs Após a configuração do projeto e a criação dos POJOs e mapeamentos (ver Manual do Framework), o usuário está apto a cadastrar as classes da camada DAO (Data Access O Object). Figura 3.1 Tela de Criação de DAOs 18

Conforme podemos observar na figura acima, a tela de DAO é dividida em três partes, são elas: Lista de DAOs já cadastrados; os botões adicionar, remover e editar; e a área de edição do DAO. Clicando em algum item da lista de DAOs, o usuário poderá observar, na área de edição, os dados do DAO selecionado e caso tenha a necessidade de alterar algo deverá iniciar a edição deste clicando no botão Editar. A adição e remoção de DAOs são feitas através dos botões Adicionar e Remover, respectivamente. Após o término da adição/edição/remoção dos DAOs, o usuário deverá salvar as alterações (botão Salvar da área de edição) ou cancelar (botão Cancelar da área de edição). IMPORTANTE : Todas as alterações feitas só serão aplicadas após o usuário clicar no botão aplicar da tela principal ou no botão Finish do Wizard. Após a edição dos DAOs, a seguinte mensagem deverá aparecer na tela: "DAOs editados com sucesso." 3.1.1. Descrição dos Campos Pacote Para selecionar o pacote que o DAO será criado o usuário deve clicar no botão Pesquisar e selecioná-lo na tela de seleção de pacotes similar a exibida na figura 3.2. Figura 3.2 Seleção de Pacote 19

POJO Para selecionar o POJO que o DAO utilizará será criado o usuário deve clicar no botão Pesquisar e selecioná-lo na tela de seleção de POJOs similar a exibida na figura 3.3. Figura 3.3 Seleção de POJO Tipo O campo tipo irá definir o tipo de implementação do DAO, as opções são: Hibernate, JDBC e Adabas. 3.1.2. Descrição das Alterações Ao salvar as alterações o Plugin irá criar as interfaces e implementações dos DAOS editados/criados de acordo com o tipo selecionado. 20

Figura 3.4 Interface gerada para o POJO Aluno Figura 3.5 Implementação gerada para o POJO Aluno e tipo Hibernate 21

3.2. Geração de Business Controllers Após a configuração do projeto, a criação dos POJOs e mapeamentos (ver Manual do Demoiselle) e a criação dos DAOs do projeto, o usuário está apto a cadastrar as classes da camada Business Controller. Figura 3.6 Tela de Cadastro de Business Controllers Conforme podemos observar na figura 3.6, a tela de Business Controller é dividida em três partes, são elas: Lista de Business Controllers já cadastrados; os botões adicionar, remover e editar; e a área de edição do Business Controller. Clicando em algum item da lista de Business Controllers,o usuário poderá observar, na área de edição, os dados do Business Controller selecionado e caso tenha a necessidade de alterar algo deverá iniciar a edição deste clicando no botão Editar. A adição e remoção de Business Controllers são feitas através dos botões Adicionar e Remover respectivamente. após o término da adição/edição/remoção dos Business Controllers, o usuário deverá salvar as alterações (botão Salvar da área de edição) ou ccancelar (botão Cancelar da área de edição). IMPORTANTE : Todas as alterações feitas só serão aplicadas após o usuário clicar no 22

botão aplicar da tela principal ou no botão Finish do wizard. Após a edição dos Business Controllers, a seguinte mensagem deverá aparecer na tela: "Business Controllers editados com sucesso." 3.2.1. Descrição dos Campos Pacote de constantes: Este campo identifica o pacote onde será gravado a classe (AliasNavigationRule.java) que conterá o conjunto de constantes que, identifica todos os casos de navegação existentes. Estas constantes serão utilizadas no cadastro dos métodos do Managed Bean. Identificador da Regra de Navegação: Este campo identifica o conjunto de casos de navegação cadastrados nos campos abaixo. Casos de Navegação: O grupo Casos de navegação irá definir todas as possíveis páginas de saída para a regra. Identificador: Este campo é o identificador do caso de navegação, é através dele que o framework identifica qual caso de navegação foi selecionado nas ações do usuário. Página de Destino: O campo página de destino define qual a página que será executada se o caso de navegação for selecionado após a execução da regra de Navegação. 3.2.2. Descrição das Alterações Ao salvar as alterações, o Plugin irá editar o arquivo de configuração JSF na área de Regras de Navegação. 23

3.3. Geração de Regras de Navegação. A tela de Navegação é dividida em três partes, são elas: Lista das Regras de Navegação já cadastradas; os botões adicionar, remover e editar; e a área de edição das Regras. Clicando em algum item da lista, o usuário poderá observar, na área de edição, os dados da Regra selecionada e caso tenha a necessidade de alterar algo deverá iniciar a edição deste clicando no botão Editar. A adição e remoção das Regras de Navegação são feitas através dos botões Adicionar e Remover respectivamente. após o término da adição/edição/remoção das Regras de Navegação, o usuário deverá salvar as alterações (botão Salvar da área de edição) ou cancelar (botão Cancelar da área de edição) Tela de Cadastro de Regras de Navegação IMPORTANTE : Todas as alterações feitas só serão aplicadas após o usuário clicar no botão aplicar da tela principal ou no botão Finish do wizard. Após a edição das Regras de Navegação, a seguinte mensagem deverá aparecer na tela: "Regras de Navegação cadastradas com sucesso." 24

3.3.1. Descrição dos Campos Pacote de constantes Este campo identifica o pacote onde será gravado a classe (AliasNavigationRule.java) que conterá o conjunto de constantes que identificam todos os casos de navegação existentes. Estas constantes serão utilizadas no cadastro dos métodos do Managed Bean. Identificador da Regra de Navegação Este campo identifica o conjunto de casos de navegação cadastrados nos campos abaixo. Casos de Navegação O grupo Casos de navegação irá definir todas as possíveis páginas de saída para a regra. Identificador Este campo é o identificador do caso de navegação, é através dele que o framework identifica qual caso de navegação foi selecionado nas ações do usuário. Página de Destino O campo página de destino define qual a página que será executada se o caso de navegação for selecionado após a execução da regra de Navegação. 3.3.2. Descrição das Alterações Ao salvar as alterações, o Plugin irá editar o arquivo de configuração JSF na área de Regras de Navegação. 25

3.4. Geração de Managed Beans Após a criação dos Business Controllers e das Regras de navegação, o usuário está apto a cadastrar as classes da camada Managed Bean. Figura 3.4 - Tela de Cadastro de Managed Beans Conforme podemos observar na figura 3.4, a tela de Managed Bean é dividida em três partes, são elas: Lista de Managed Beans já cadastrados; os botões adicionar, remover e editar; e a área de edição do Managed Bean. Clicando em algum item da lista de Managed Beans o usuário poderá observar, na área de edição, os dados do Managed Bean selecionado e caso tenha a necessidade de alterar algo deverá iniciar a edição deste clicando no botão Editar. A adição e remoção de Managed Beans são feitas através dos botões Adicionar e Remover respectivamente. após o término da adição/edição/remoção dos Managed Beans o usuário deverá salvar as alterações (botão Salvar da área de edição) ou cancelar (botão Cancelar da área de edição). 26

IMPORTANTE : Todas as alterações feitas só serão aplicadas após o usuário clicar no botão aplicar da tela principal ou no botão Finish do wizard. Após a edição dos Managed Beans, a seguinte mensagem deverá aparecer na tela: "Managed Beans editados com sucesso." 3.4.1. Descrição dos Campos Nome: O campo nome indica o nome do Managed Bean a ser criado/editado. Pacote: Para selecionar o pacote que o Managed Bean será criado o usuário deve clicar no botão Pesquisar e selecioná-lo na tela de seleção de pacotes similar a exibida na figura 3.8. Nome da variável O campo nome da variável indica a variável que será criada e colocada no escopo para o Managed Bean ser utilizado nas páginas da aplicação. Escopo O campo escopo indica o tipo de escopo do Managed Bean, as opções são: application, request e session. Business Controller O campo Business Controller indicará qual a Interface BC que o Managed Bean irá acessar. Este campo é opcional. POJOs Para selecionar e inserir os POJOs que o Managed Bean utilizará, o usuário deve clicar no botão Pesquisar, selecioná-lo na tela de seleção de POJOs similar a exibida na figura 3.9 e depois incluir o POJO. Para remover algum POJO basta selecioná-lo e clicar no botão Remover. Ações: Para inserir, editar e remover as ações do Managed Beans basta clicar nos botões de controle ao lado da tabela e selecionar o nome da ação e o retorno desta no popup que irá abrir na tela. Figura 3.8 Seleção de Pacote 27

Figura 3.9 Seleção de POJO 3.4.2. Descrição das Alterações Ao aplicar as alterações o Plugin irá editar o arquivo de configuração JSF na área de managed beans com as alterações feitas pelo usuário. Além disso o plugin criará as classes dos Managed Beans editados/criados. Figura 3.10 Classe gerada para o POJO Aluno 28

3.5. Geração de Fachadas Após a criação dos Business Controllers, o usuário também estará apto a cadastrar classes do tipo Fachada. Figura 3.11 Tela de Cadastro de Fachadas Conforme podemos observar na figura acima, a tela de Fachadas é dividida em três partes, sendo elas: Lista de Fachadas já cadastrados; os botões adicionar, remover e editar; e a área de edição da fachada. Clicando em algum item da lista de Fachadas o usuário poderá observar, na área de edição, os dados da Fachada selecionado e caso tenha a necessidade de alterar algo deverá iniciar a edição deste clicando no botão Editar. A adição e remoção de Fachadas são feitas através dos botões Adicionar e Remover respectivamente. após o término da adição/edição/remoção dos Fachadas o usuário deverá salvar as alterações (botão Salvar da área de edição) ou cancelar (botão Cancelar da área de edição). 29

IMPORTANTE : Todas as alterações feitas só serão aplicadas após o usuário clicar no botão aplicar da tela principal ou no botão Finish do wizard. Após a edição das Fachada, a seguinte mensagem deverá aparecer na tela: "Fachada editadas com sucesso." 3.5.1. Descrição dos Campos Nome : O campo nome indica o nome da classe Fachada a ser criada/editada. Pacote: Para selecionar o pacote onde a Fachada será criado o usuário deve clicar no botão Pesquisar e selecioná-lo na tela de seleção de pacotes similar a exibida na figura 3.12. Figura 3.12 Seleção de Pacote Business Controller: O campo Business Controller indicará qual a interface BC que a Fachada irá acessar. Este campo é opcional. 3.5.2. Descrição das Alterações Ao aplicar as alterações o Plugin irá criar as classes das Fachadas editadas/criadas. 30

Figura 3.13 Fachada gerada para o BC Aluno 31

3.6. Geração de Testes Unitários Após a configuração do projeto, a criação dos Pojos e mapeamentos (ver Manual do Demoiselle) e a criação das diversas camadas da aplicação, o usuário deve desenvolver os Testes Unitários para estas diversas classes do sistema. Para isso o Wizard prove uma funcionalidade que irá gerar estes testes de acordo com a Interface da camada a ser testada no padrão do componente Junit (http://www.junit.org/). Tela de Cadastro de Testes Unitários Conforme podemos observar na figura acima, a tela de Testes Unitários é dividida em três partes, são elas: Lista de Testes Unitários já cadastrados; os botões adicionar e remover; e a área de edição do Teste Unitário. Clicando em algum item da lista de Testes Unitários o usuário poderá observar, na área de edição, os dados do Teste Unitário selecionado. A adição e remoção de Testes Unitários são feitas através dos botões Adicionar e Remover respectivamente, após o término da adição/remoção dos Testes Unitários o usuário deverá salvar as alterações (botão Salvar da área de edição) ou cancelar (botão Cancelar da área de edição). 32

3.6.1. Descrição dos Campos Tipo de Interface O campo tipo de Interface indica qual a camada alvo para a criação dos testes. As opções são: DAO, Busines Controller, Managed Bean e Façade Classe Alvo para geração dos testes Selecionar, através do botão pesquisar qual Interface servirá de base para a geração da classe de testes. 3.6.2. Descrição das Alterações Ao salvar as alterações, o Plugin irá criar as classes no diretório padrão de testes (src/test/java) com a mesma estrutura de pacote da classe base. 33

3.7. Criar páginas A criação das páginas da aplicação tem dois requisitos: Os POJOs que serão utilizados e o Managed Bean da entidade. O wizard possui dois passos, o primeiro, o usuário seleciona o local das páginas e quais os tipos de páginas que serão cadastradas, no segundo passo o usuário deverá preencher os diversos campos de cada página antes de gerá-las. A seguir, na figura 3.14 a primeira tela do wizard e as caixas de opções links para as demais. Após o segundo passo, o usuário deverá clicar no botão Finish para criar as páginas ou em Cancelar, para cancelar a operação sem nenhuma alteração. 3.7.1. Descrição dos Campos Diretório: Para selecionar o diretório onde as páginas serão criadas o usuário deve clicar no botão Pesquisar e selecioná-lo na tela de seleção de diretórios similar a exibida na figura 3.15. Modelos: Selecionar os tipos de páginas que serão criadas, as opções são: Página de listagem, Página de visualização, Página de edição. O usuário deve selecionar pelo menos um modelo para continuar a criação das páginas. Figura 3.14 Tela de seleção das páginas 34

Figura 3.15 Seleção de Diretório 3.7.2. Cadastro da Página de Listagem Ao selecionar na tela inicial o modelo "Listagem" e passar para a próxima tela, esta possuirá uma aba para o cadastro da página de Listagem, vide figura 3.16. O usuário deverá definir o Managed Bean e o nome da página (campos obrigatórios), este último deverá possuir a extensão ".jsp". Os demais itens não são obrigatórios mas deverão ser preenchidos para o correto funcionamento da página que será criada. 35

Figura 3.16 Tela de Cadastro da Página de Listagem 3.7.2.1. Descrição dos Campos Nome do arquivo: O campo nome do arquivo deverá conter uma sequencia de caracteres válidos para nome de arquivo, se a extensão não for informada será assumido ".xhtml". Managed Bean : Para selecionar o managed bean que a página estará associada basta clicar no botão Pesquisar e selecioná-lo. POJO: O campo POJO indica qual a variável será utilizada na iteração da página. Filtros: O grupo Filtros definirá quais campos dos objetos do Managed Bean serão filtros da pesquisa. Campo : Nome do campo que será filtro. Rótulo: Rótulo que aparecerá na página identificando o filtro. Tipo: Tipo do campo, as opções são: calendar: Campo de edição seguido de um botão que exibe um calendário para o usuário selecionar a data. inputtext: Campo de edição. inputhidden: Campo oculto. selectonemenu: Combo com vários itens para o usuário selecionar um. selectoneradio: Grupo de itens para o usuário selecionar 36

um. selectmanycheckbox: Grupo de itens para o usuário selecionar vários. outputtext: Campo de visualização. graphicimage: Imagem. Colunas: O grupo Colunas definirá quais as ações e os campos dos objetos do Managed Bean serão colunas na listagem de objetos que satisfizeram a pesquisa. Ação(Caixa de seleção): Indica se a coluna é uma Ação (ex.: Exibir, alterar ou excluir) ou se é um Campo vindo do Managed Bean. Ação: Nome da ação que representa a coluna. Somente quando a coluna for uma ação. Campo: Nome do campo que será coluna. Somente quando a coluna não for uma ação. Rótulo: Rótulo que aparecerá na tela identificando a coluna. 3.7.2.2. Descrição das Alterações Ao salvar as alterações(botão Finish) o Plugin irá criar a página de listagem bem como as demais páginas selecionadas. 3.7.3. Cadastro da Página de Visualização 3 Ao selecionar na tela inicial o modelo "Visualização" e passar para a próxima tela, esta possuirá uma aba para o cadastro da página de Visualização, vide figura 3.17. O usuário deverá definir o Managed Bean e o nome da página (campos obrigatórios). Os demais itens não são obrigatórios, mas deverão ser preenchidos para o correto funcionamento da página que será criada. 37

M Figura 3.17 Tela de Cadastro da Página de Visualização 3.7.3.1. Descrição dos Campos Nome do arquivo O campo nome do arquivo deverá conter uma sequencia de caracteres seguido da extensão ".jsp". Managed Bean Para selecionar o managed bean que a página estará associada basta clicar no botão Pesquisar e selecioná-lo. Tipo de campo O Tipo do campo indica se todos os campos da tela serão do tipo OutPut (campo de visualização) ou se será do tipo InPut (campo de edição do tipo somente leitura) Campos O grupo Campos definirá quais campos do objeto do Managed Bean serão exibidos na página. Campo Nome do campo que será exibido. Rótulo Rótulo que aparecerá na página identificando o campo. Detalhes O grupo Detalhes definirá quais PropertyHelpers do Managed Bean terão um relacionamento de Mestre X Detalhe na página. Botão Remover Detalhe Remove o detalhe selecionado na tabela. Botão Editar Detalhe Para editar o detalhe selecionado na tabela, deve-se clicar neste botão, abrirá uma tela para a seleção dos campos, colunas e detalhes do detalhe. 38

3.7.3.2. Descrição das Alterações Ao salvar as alterações(botão Finish) o Plugin irá criar a página de visualização bem como as demais páginas selecionadas. 3.7.4. Cadastro da Página de Edição Ao selecionar na tela inicial o modelo "Edição" e passar para a próxima tela, esta possuirá uma aba para o cadastro da página de Edição, vide figura 3.18. O usuário deverá definir o Managed Bean e o nome da página (campos obrigatórios). Os demais itens não são obrigatórios mas deverão ser preenchidos para o correto funcionamento da página que será criada. Figura 3.18 Tela de Cadastro da Página de Edição 3.7.4.1. Descrição dos Campos Nome do arquivo O campo nome do arquivo deverá conter uma sequencia de caracteres seguido da extensão ".jsp". Managed Bean Para selecionar o managed bean que a página estará associada basta clicar no botão Pesquisar e selecioná-lo. Campos O grupo Campos definirá quais campos do objeto do Managed Bean serão exibidos na página. Campo Nome do campo que será exibido. Rótulo Rótulo que aparecerá na página identificando o campo. Tipo Tipo do campo, as opções são: calendar: Campo de edição seguido de um botão que exibe um calendário para o usuário selecionar a data. 39

inputtext: Campo de edição. inputhidden: Campo oculto. selectonemenu: Combo com vários itens para o usuário selecionar um. selectoneradio: Grupo de itens para o usuário selecionar um. selectmanycheckbox: Grupo de itens para o usuário selecionar vários. outputtext: Campo de visualização. graphicimage: Imagem. Detalhes O grupo Detalhes definirá quais PropertyHelpers do Managed Bean terão um relacionamento de Mestre X Detalhe na página. Botão Remover Detalhe Remove o detalhe selecionado na tabela. Botão Editar Detalhe Para editar o detalhe selecionado na tabela, deve-se clicar neste botão, abrirá uma tela para a seleção dos campos, colunas e detalhes do detalhe. 3.7.4.2. Descrição das Alterações Ao salvar as alterações(botão Finish) o Plugin irá criar a página de edição bem como as demais páginas selecionadas. 4 Tutorial para uso No link link abaixo está disponível um tutorial que demonstra o uso do Wizard para apoio ao desenvolvimento de uma aplicação no padrão Demoiselle. http://www.frameworkdemoiselle.gov.br/menu/framework/manuais-e-tutoriais 40