= Exibir Interface de Visualização = == 1 Descrição == Para o usuário interagir com a aplicação é necessário uma interface que possibilite o envio e recebimento de informação entre o sistema e o usuário humano. Quando a camada de controle processa o recebimento de uma ação é executada a classe definida no campo model do banco de dados. De posse do resultado da classe de negócios, um objeto (ou array de objetos), é repassado para a classe da camada view que criará o XML para ser retornado ao solicitante. Quando a ação solicitada não estiver associada a template, significa que os dados devem ser convertidos para XML e retornados para o cliente, sem formatação html. Esta funcionalidade e executada pela classe classToXML existente na camada view. No entanto se o objeto de dados recebido pela camada view vier com um template associado, é necessário que a camada view seja capaz de mesclar os dados do negócio com o template indicado. Para isso, a camada deve conhecer os métodos e atributos da classe de dados passada como parâmentro, e para cada objeto definido no template, o framework gera o componente HTML correspondente e, quando necessário, insere as informações da camada de negócios. De alguma forma deve haver associação entre os atributos de dados e os correspondentes componentes da interface. == 2 Atores == Usuários da aplicação Navegador do Usuário == 3 Pré-condições == Clicar em uma aplicação. == 4 Eventos == 1. Usuário clica sobre o ícone da aplicação e o navegador envia requisição ao servidor Web contendo o código da aplicação e a ação a ser executada. 2. Camada de controle recebe informação, executa o [wiki:WF/executarrotina UC Executar Rotina]. 3. Camada de controle recebe um objeto com os dados a serem mesclados com a camada de visualização. {A1} 4. Camada de controle instancia a camada de visualização, passando o objeto de negócio e o template como parâmetros. {A2}{A3} 5. Para cada objeto definido no template gera o código HTML relativo ao componente, traduzindo o que for necessário. {A4} 6. Para cada objeto definido na camada de negócio e referenciado no template popula com as informações obtidas.{A5} 7. Retorna código XML para a camada de controle. 8. Sistema retorna para o cliente o XML gerado para o cliente. 9. Navegador do usuário popula região da interface com os dados recebidos. == 5 Eventos Alternativos == {A1} Camada de controle recebe um objeto de mensagens, que pode conter mensagens normais ou mensagens de erro. {A2} Camada de controle instancia a camada de visualização passando o objeto de mensagens como parâmetro e vai para o passo 7. {A3} Camada de controle instancia a camada de visualização passando somente o objeto de dados e vai para o passo 7. {A4} Caso não exista template vinculado com a ação, converte o objeto de dados recebido para XML. {A5} Se não existem objetos de negócio executa direto o passo 7 do fluxo. == 6 Tratamento de Erros == Não relevante == 7 Mensagem == Não relevante == 8 Pós-condições == Interface humano computador gerada. == 9 Regras de Negócio == Não relevante. == 10 Telas Envolvidas == Não relevante. == 11 Notas ==