Molhando os pés com Tapestry, parte 1

Tamanho: px
Começar a partir da página:

Download "Molhando os pés com Tapestry, parte 1"

Transcrição

1 Molhando os pés com Tapestry, parte 1 Daniel Fernandes Martins Se cansou de apenas ouvir falar sobre o framework Tapestry? Se sim, então veja por si só o que o Tapestry pode fazer por você! Sobre o tutorial Molhando os pés com Tapestry é um tutorial que apresenta, de uma forma clara e objetiva, informações sobre o como o framework Tapestry [1] pode nos ajudar a criar aplicações Java para web. Este tutorial está dividido em três partes que cobrem desde a montagem do ambiente de desenvolvimento até criação de pequenas aplicações web. Segue, em detalhes, o conteúdo deste tutorial: Configuração do NetBeans 5.5 [2] para criação de aplicações Tapestry; Hello world utilizando o Tapestry; Aprendendo a submeter formulários; O tutorial não cobre assuntos mais avançados, como criação de componentes e validadores customizados, mas se isso for de interesse, basta que o leitor busque as informações necessárias na página do projeto Tapestry. Requisitos de Software A IDE utilizada para desenvolvimento das aplicações é o NetBeans 5.5 final. Para facilitar a criação de projetos Tapestry, foi ainda utilizado o plugin nbtapestrysupport [3]. O Tomcat [4] que acompanha o NetBeans foi utilizado para rodar as aplicações mais simples, enquanto que o Servidor de Aplicações Sun Java System Application Server 9 [5] foi utilizado para rodar a aplicação que será desenvolvida na última parte deste tutorial, já que esta aplicação conta com recursos mais avançados, como a utilização de Session Beans do tipo Stateless e utilização da API de persistência JPA do Toplink [6]. Configurando o ambiente Caso você não possua o NetBeans 5.5 final instalado na sua máquina, esta é a hora de fazê-lo. Para isso, visite o site do NetBeans e baixe a IDE. Para facilitar as coisas, o site disponibiliza uma versão especial do NetBeans que instala e configura o Sun Java System Application Server 9 automaticamente. No entanto, caso prefira, você pode baixar o Sun Java System Application Server separadamente. 1

2 Caso a última opção seja a escolhida, será necessário configurar o Servidor de Aplicações junto ao NetBeans. Para fazer esta configuração, siga as seguintes instruções: 1. Abra a aba Runtime. Clique com o botão direito do mouse em Servers e selecione a opção Add Server Selecione a opção Sun Java System Application Server e pressione Next; 3. Indique a localização onde o Servidor de Aplicações foi instalado. O campo Domain deve ser selecionado automaticamente. Pressione Next; 4. Indique o usuário e a senha que você configurou durante a instalação do Servidor de Aplicações. O padrão é: usuário admin e senha adminadmin; 5. Pressione Finish. Uma vez que o NetBeans esteja instalado, é necessário baixar e instalar o plugin nbtapestrysupport. O plugin, cuja versão utilizada neste tutorial é a 0.2.0, é composto de três arquivos.nbm. Para baixar o plugin, visite o site do projeto e selecione a opção Documents & Files no menu à esquerda da tela. Selecione a pasta v0.2.0 e baixe os três arquivos.nbm disponíveis. Para instalar o plugin, abra o NetBeans e acesse a opção Tools - Update Center através do menu. Marque a opção Install Manually Downloaded Modules e pressione Next. Basta então adicionar os arquivos.nbm referentes ao plugin e prosseguir com a instalação. Deixe o NetBeans reiniciar para finalizar a instalação do plugin. O plugin não funciona em versões anteriores à versão 5.5 final do NetBeans. Portanto, certifique-se de estar utilizando a versão 5.5 final do NetBeans. Agora é hora de baixar o Tapestry (ou 4.0.2, caso prefira uma versão estável), através da página do projeto. Sim, é verdade... a versão não é a versão estável, mas já existem algumas mudanças interessantes em relação à versão 4.0.2, principalmente em relação à validação client-side. Depois de baixar o arquivo, descompacte-o em um local que seja fácil de lembrar. Verifique se os arquivos e dependências do framework estão separados por diretórios. Para facilitar as coisas quando estivermos no NetBeans, mova todos os arquivos.jar para uma mesma pasta, conforme pode ser visto na imagem que segue: 2

3 Ilustração 1: Arquivos do Tapestry e dependências Criando o projeto Vamos então criar nosso projeto, clicando em File New Project. Selecione a opção Web Application. Pressione Next. Dê um nome de sua preferência. Selecione o Tomcat como servidor web e pressione Next. Se a instalação do plugin nbtapestrysupport foi efetuada com sucesso, deverá aparecer a opção Tapestry 4.0 na lista de frameworks. Selecione-o. O plugin também irá pedir a localização dos arquivos e dependências do Tapestry. Basta selecionar a pasta onde estão os arquivos e dependências do Tapestry. Pressione Finish para concluir a criação do projeto: 3

4 Ilustração 2: Arquivos gerados pelo NetBeans Antes de começarmos precisamos entender o motivo da existência dos arquivos e configurações que foram gerados pelo plugin para que possamos criar um projeto Tapestry manualmente caso seja necessário. Vamos iniciar a exploração pelo arquivo web.xml. Veja só a bagunça: <?xml version="1.0" encoding="utf-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://java.sun.com/xml/ns/j2ee <filter> (1) <filter-name>redirect</filter-name> <filter-class>org.apache.tapestry.redirectfilter</filter-class> </filter> <filter-mapping> <filter-name>redirect</filter-name> <url-pattern>/</url-pattern> </filter-mapping> <servlet> <servlet-name>tapestryapplication</servlet-name> (2) <servlet-class>org.apache.tapestry.applicationservlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>tapestryapplication</servlet-name> <url-pattern>/app</url-pattern> (2) </servlet-mapping> <servlet-mapping> 4

5 <servlet-name>tapestryapplication</servlet-name> <url-pattern>*.html</url-pattern> (3) </servlet-mapping> <servlet-mapping> <servlet-name>tapestryapplication</servlet-name> <url-pattern>*.direct</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>tapestryapplication</servlet-name> <url-pattern>*.sdirect</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>tapestryapplication</servlet-name> <url-pattern>*.svc</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>tapestryapplication</servlet-name> <url-pattern>/assets/*</url-pattern> </servlet-mapping> <session-config> <session-timeout> 30 </session-timeout> </session-config> <welcome-file-list> <welcome-file> index.jsp </welcome-file> </welcome-file-list> </web-app> Nossa, que sujeira! Vamos tentar entender o que o plugin fez com o nosso web.xml. 1. Este é o servlet filter do Tapestry, cuja função é redirecionar requisições para o Servlet principal do Tapestry; 2. Esta é a declaração do Servlet do Tapestry. A definição do elemento <servletname> é muito importante, pois este mesmo nome será usado em outros arquivos da aplicação. Já o elemento <url-pattern> deve ser setado como /app, embora seja possível indicar um outro mapeamento. Como fazer essa modificação acarreta em configuração extra, deixe o mapeamento como está; 3. Nas linhas subseqüentes são configurados outros padrões de URL que serão despachados para o Servlet do Tapestry. Não precisa se preocupar com esses padrões, a menos que se esteja trabalhando com Friendly URLs. Caso queira, sinta-se livre para remover todos esses mapeamentos do Servlet, com exceção do mapeamento /app. Vamos continuar com a exploração! Lembra-se de que foi dito que o elemento <servlet-name> do Servlet do Tapestry era importante? Pois então... o Servlet do Tapestry foi mapeado com o nome tapestryapplication e note que existe um arquivo, também dentro da pasta WEB-INF, chamado tapestryapplication.application. Este é o arquivo de configurações globais da aplicação. Abra este arquivo: <?xml version="1.0" encoding="utf-8"?> 5

6 <!DOCTYPE application PUBLIC "-//Apache Software Foundation//Tapestry Specification 4.0//EN" "http://jakarta.apache.org/tapestry/dtd/tapestry_4_0.dtd"> <application name="tapestry Application"> <!--meta key="org.apache.tapestry.page-class-packages" value="my.page.package"/--> (1) <!--meta key="org.apache.tapestry.component-class-packages" value="my.component.package"/--> (2) <library id="contrib" (3) specification-path="/org/apache/tapestry/contrib/contrib.library" /> </application> 1. Esta linha vêm comentada e serve para indicar qual é o pacote-padrão onde as páginas do Tapestry estão situadas. Esta informação só é utilizada caso o desenvolvedor prefira que o próprio Tapestry localize as classes referentes às páginas, sendo uma boa opção para aplicações pequenas e com poucas páginas. O elemento <meta> serve para definição de meta-dados da aplicação; 2. Da mesma forma, este elemento serve para indicar qual é o pacote-padrão onde os componentes customizados do Tapestry estão situados; 3. Podemos utilizar bibliotecas externas, declarando-as com o elemento <library>. Neste caso, a Library em questão é a biblioteca de componentes contrib. Esta entrada é opcional neste tutorial pelo fato de não utilizarmos nenhum componente contrib. O Tapestry utiliza internamente um framework de injeção de dependências chamado Hivemind [7]. O Hivemind seria mais um Spring-like [8] da vida, se não fosse alguns recursos realmente interessantes, com destaque ao que permite que os desenvolvedores definam os serviços da aplicação de uma forma customizada, através de uma sintaxe XML própria! Aguarde, este recurso será mostrado em detalhes no último tutorial. Por isso fique esperto! O importante é saber que, embora o Tapestry necessite do Hivemind para funcionar, nós também podemos utilizá-lo como substituto do Spring, com a vantagem de não precisarmos adicionar nenhum novo JAR na nossa aplicação. A configuração do Hivemind é definida no arquivo hivemodule.xml que, por enquanto está praticamente vazio: <?xml version="1.0" encoding="utf-8"?> <module id="id" version="0.0.1" package="package"> </module> Finalmente, chegamos aos arquivos de página, que são os arquivos Home.page e Home.html. O arquivo Home.page é utilizado para declarar componentes utilizados pela página, além de outras configurações, como dependências externas (beans do Spring ou 6

7 Hivemind, por exemplo), managed beans e propriedades da página. O conteúdo deste arquivo deve parecer com o seguinte: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE page-specification PUBLIC "-//Apache Software Foundation//Tapestry Specification 4.0//EN" "http://jakarta.apache.org/tapestry/dtd/tapestry_4_0.dtd"> <page-specification> </page-specification> Já o arquivo Home.html representa o template da página, que não é nada mais do que um arquivo HTML puro! Este é um dos sweet spots do Tapestry: podemos ter páginas complexas cujo template não passa de um HTML que pode ser manipulado facilmente por profissionais de design, em softwares como Dreamweaver. Ou seja, nada de ter que ensinar JSTL ou tags JSP para seus designers... e nada os deixaria tão felizes, pode acreditar. Com o Tapestry, podemos deixar os designers fazerem o que mais sabem, que é serem criativos, enquanto que nós, desenvolvedores Java, fazemos o trabalho de homem! =D (desculpem a piadinha, just kidding!) É isso aí, vamos montar a nossa primeira página! Hello f*** world!! Abra o arquivo Home.html e o edite com o seguinte conteúdo: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>tapestry HelloWorld</title> </head> <body> <h1>welcome!</h1> <h3> <span value="hello World!!"> (*) Message here </span> </h3> </body> </html> Este template nada mais é do que uma página HTML simples e que pode ser facilmente editada com ajuda de ferramentas WYSIWYG (what you see is what you get), como o Dreamweaver. A única particularidade é a existência de uma tag <span> com dois atributos diferentes : jwcid (java web component id) e value, que significam, respectivamente, qual é o componente Tapestry que deverá substituir o <span> e qual é o valor renderizado pelo componente. Esta forma de se declarar os parâmetros de um componente Tapestry é conhecida como parâmetros informais, onde indicamos diretamente na tag HTML os 7

8 atributos do componente Tapestry. Existem determinados componentes que não suportam esta abordagem. Em caso de dúvida, basta uma olhada na documentação do Tapestry. O componente Insert é utilizado para renderizar (inserir) um objeto qualquer na página HTML. A expressão value pode arnazenar desde literais simples à expressões OGNL [9]. Veremos como fazer isso nos próximos exemplos. Antes de rodarmos a aplicação, você deve estar se perguntando o porquê antes do nome do componente, no atributo jwcid. Para entender, saiba que existem três formas de declarar componentes Tapestry em um template HTML: 1. jwcid= componentid Indica um componente declarado no arquivo de especificações da página. O literal componentid será utilizado como uma chave para identificar o componente dentro do arquivo.page. Mais adiante será mostrado como se declarar componentes desta forma; 2. Declara um componente implícito, ou seja, o componente é declarado diretamente no template HTML, sem necessidade de declará-lo no arquivo de especificações da página (arquivo.page). Costuma-se utilizar este tipo de declaração para componentes que não precisam ser referenciados por outros componentes ou pela página na qual o componente está inserido; 3. jwcid= Também declara um componente implícito, mas especifica um id através do qual o componente possa ser referenciado por outros componentes. Rode o exemplo, e, com alguma sorte, o resultado será parecido com o mostrado abaixo: Ilustração 3: Resultado da execução do Hello World Caso ocorra algum erro em relação à classes não encontradas, certifique-se que a Library Tapestry-4.0 (que foi criada pelo plugin nbtapestrysupport) contenha todos os arquivos necessários. Tive alguns problemas com este plugin pois ele não adicionava todos os arquivos.jar que eram necessários. Caso este problema aconteça com você, basta ir até o menu Tools Library Manager e adicionar na Library Tapestry-4.0 todos os arquivos.jar que faltam. O que achou? Vamos modificar o arquivo Home.html para fazer uso de um componente declarado: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>tapestry HelloWorld</title> 8

9 </head> <body> <h1>welcome!</h1> <h3> <span jwcid="hellomessage"> Message here </span> </h3> </body> </html> Para finalizar as modificações, abra o arquivo Home.page e o configure da seguinte forma: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE page-specification PUBLIC "-//Apache Software Foundation//Tapestry Specification 4.0//EN" "http://jakarta.apache.org/tapestry/dtd/tapestry_4_0.dtd"> <page-specification> <component id="hellomessage" type="insert"> (*) <binding name="value" value="literal:hello World!!" /> </component> </page-specification> Note que o que fizemos foi, basicamente, remover as configurações do componente do template HTML e colocar as mesmas configurações no arquivo de definições da página. O atributo id é um identificador para o componente e deve ser igual ao indicado no atributo jwcid do template HTML. O atributo type indica qual o tipo de componente. A página do Tapestry possui documentação relativa aos componentes disponíveis e instruções sobre como usá-los. Dentro do elemento <component> existe um elemento <binding> que serve para definir valores para as propriedades do componente. Por exemplo, para o componente Insert, podemos definir as propriedades como value e format, que armazenam, respectivamente, o valor do componente e um objeto Format usado para formatá-lo. Neste exemplo, estamos usando o elemento <binding> para configurar o valor da propriedade value para a expressão literal:hello World!!. Rode a aplicação novamente e veja que tudo funciona como deveria. Podemos trocar a expressão value do componente por uma expressão OGNL. Por exemplo: 2*9 ou ognl:2*9. Faça a modificação e veja o que acontece! Isso mostra o quanto o Tapestry é superior ao JSP, pois podemos, por exemplo, utilizar expressões OGNL de qualquer tipo, valores de objetos injetados via Spring/Hivemind e diversas outras coisas que nos ajudam a manter cada coisa no seu devido lugar. Ahhh sim!... Talvez você deva estar se perguntando: - mas, como que o Tapestry sabe que o arquivo Home.page é o arquivo de definições do template Home.html? A resposta é simples: convenção sobre configuração. Como os arquivos possuem o mesmo nome Home, então o Tapestry assume que o arquivo.html é o template e que o 9

10 arquivo.page é o arquivo de definições. Ufa! Espero que estes exemplos tenham aberto a sua mente quanto ao que podemos fazer com o Tapestry. Mas deixo claro que isto é só o começo! Submetendo formulários Como ninguém consegue nada só com um Hello World, então este tutorial vai apresentar um novo exemplo, um pouco mais elaborado, e apresentar ao leitor outras particularidades do Tapestry. Prepare-se para muitas surpresas! Nosso próximo exemplo mostra como o Tapestry lida com formulários HTML. Para facilitar as coisas, vamos aproveitar o projeto que criamos para abrigar a nova página. Para criar a página, vá até o menu File New File... Selecione a categoria Tapestry e a opção Tapestry Page file. Pressione Next. Dê o nome PersonForm no campo File Name e selecione a pasta WEB-INF no campo Folder. Pressione Finish. Crie também um novo arquivo HTML chamado PersonForm.html, também na pasta WEB-INF através da opção File New File... Apenas para constar, os arquivos estão sendo inseridos dentro da pasta WEB-INF por dois motivos: 1. A página Home, gerada automaticamente pelo plugin, foi criada na pasta WEB-INF; 2. Qualquer arquivo situado na pasta WEB-INF não pode ser acessado externamente, então isso garante que os arquivos de template e de definição de página não sejam expostos a curiosos de plantão. Também é possível proteger acesso a arquivos que não estejam dentro do diretório WEB-INF, embora explicar como fazê-lo não esteja dentro do escopo do tutorial. Edite o arquivo PersonForm.html, deixando-o parecido com a seguinte listagem: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>tapestry form sample</title> </head> <body> <h1>person registration</h1> <form jwcid="form"> <table> <tr> <td>name</td> <td> <input type="text" jwcid="name" /> </td> </tr> <tr> <td colspan="2"> <input type="submit" /> 10

11 </td> </tr> </table> </form> </body> </html> Edite também o arquivo PersonForm.page: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE page-specification PUBLIC "-//Apache Software Foundation//Tapestry Specification 4.0//EN" "http://jakarta.apache.org/tapestry/dtd/tapestry_4_0.dtd"> <page-specification class="com.myapp.tapestry.pages.personform"> (1) <component id="form" type="form"> (2) <binding name="listener" value="listener:onsubmit" /> </component> <component id="name" type="textfield"> (3) <binding name="value" value="ognl:name" /> </component> </page-specification> O leitor provavelmente já está se acostumando com a sintaxe deste arquivo, que não é muito diferente do arquivo Home.page, definido anteriormente: 1. O atributo class serve para indicarmos quel é a classe Java que irá conter a lógica associada à página. Posteriormente iremos criar esta classe; 2. Declara um componente do tipo Form. Para tratar a submissão do formulário, é preciso definir a propriedade listener, onde indicamos um método declarado na classe da página (que, no caso, será a classe PersonForm). Veremos adiante como podemos definir tal método; 3. Declara um componente do tipo TextField, responsável por renderizar um <input type= text > no HTML resultante. Associamos o valor deste componente com o resultado da expressão OGNL name. Atenção! O prefixo ognl: pode ser omitido quando utilizado em expressões declaradas dentro do arquivo de definições da página (.page), entretanto, no template HTML, o tipo padrão de expressão é literal:. Dessa forma, se o desejado é executar uma expressão OGNL a partir de um componente implícito (declarado diretamente no template HTML), então deve-se fornecer o prefixo ognl:. Ainda em relação ao item 3 da lista anterior, o framework Tapestry, através do uso da biblioteca OGNL, irá chamar o método getname() no objeto Java correspondente à página 11

12 em questão quando for obter o valor de name ou chamar o método setname(string) quando for alterar o valor de name. Podemos também, sempre que necessário, referenciar atributos aninhados, por exemplo: ognl: person.address.street. Esta característica não é particular ao Tapestry e sim à biblioteca OGNL e maiores informações sobre como escrever expressões OGNL podem ser obtidas através da documentação do projeto. Voltando ao exemplo, para fazer a coisa toda funcionar, crie uma classe PersonForm, no pacote com.myapp.tapestry.pages. Digite o seguinte código: package com.myapp.tapestry.pages; import org.apache.tapestry.html.basepage; public abstract class PersonForm extends BasePage { private String name; public String getname() { return name; } public void setname(string name) { this.name = name; } } public void onsubmit() { System.out.println(name); } Note que a classe é abstrata! Eu sei que é difícil, mas tente suportar esta situação por mais alguns momentos... tentarei explicar o motivo dessa bizarrice. Adicione um link no arquivo Home.html apontando para a página recém-criada: <html> <head> </head> <body>... <a href="personform.html" page="personform"> Person Form </a> </body> </html> Este componente é um PageLink, que serve para criar um elemento <a> no HTML resultante. O link redirecionará o usuário para a página PersonForm quando este for acionado. Pois bem, faça deploy da aplicação e execute-a. Com alguma sorte, a aplicação funcionará: 12

13 Ilustração 4: Opa! Funcionou! Posso ver a sua felicidade neste momento. Funcionou mesmo? Tem certeza? Eu não queria estragar este momento emocionante, mas eu proponho que faça um teste: abra uma outra janela do browser e acesse novamente o formulário. O que ocorreu? Oh droga... mesmo acessando o formulário a partir de outra janela, o formulário mostra o nome submetido anteriormente. Em outras palavras, os dados submetidos por um usuário são visíveis a outros! Antes de entrar em pânico, vamos entender o porquê... Isso acontece porquê o Tapestry não tem o hábito de descartar o objeto usado para atender uma requisição. O que o framework faz é armazenar tal objeto em um pool. Então, quando outras requisições são feitas a uma mesma página, o Tapestry retira o objeto do pool para servir as requisições. Caso ocorra uma requisição a uma determinada página que não esteja disponível no pool (ou todos os objetos existentes estejam atendendo outras requisições), novos objetos são criados para dar conta da demanda. Embora este comportamento não faça muito sentido num primeiro momento, podemos observar que esta arquitetura torna o Tapestry uma boa escolha para quem deseja criar aplicações web mais escaláveis. Então, como fazer para que os dados fornecidos por um usuário não sejam visíveis a outros? A resposta é: precisamos trabalhar com um recurso chamado de injeção de propriedades, onde o Tapestry realizará automaticamente o controle do ciclo de vida das propriedades da página. Para isso, abra o arquivo PersonForm.page e faça a seguinte alteração: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE page-specification PUBLIC "-//Apache Software Foundation//Tapestry Specification 4.0//EN" "http://jakarta.apache.org/tapestry/dtd/tapestry_4_0.dtd"> <page-specification class="com.myapp.tapestry.pages.personform"> <property name="name" /> <component id="form" type="form"> <binding name="listener" value="listener:onsubmit" /> </component> <component id="name" type="textfield"> <binding name="value" value="ognl:name" /> </component> </page-specification> 13

14 Modifique também a classe PersonForm: package com.myapp.tapestry.pages; import org.apache.tapestry.html.basepage; public abstract class PersonForm extends BasePage { public abstract String getname(); } public void onsubmit() { System.out.println(getName()); } What the f***?!?!? É incrível como o autor do Tapestry gosta da palavrinha abstract! No entanto, há um motivo para o uso desta abordagem, ainda que pareça meio bizarro. O que acontece é que, em tempo de execução, o Tapestry cria subclasses concretas para as páginas e componentes, adicionando código necessário para tratar algumas situações que teríamos de implementar à mão. No nosso exemplo, declaramos um elemento <property name= name /> no arquivo PersonForm.page. Durante a execução da aplicação, o Tapestry cria uma subclasse concreta de PersonForm, fornecendo, entre outras coisas, implementações dos métodos getname() e setname(string). Então, para que possamos invocar o método getname() fornecido pelo Tapestry, devemos declarar um método getname() abstrato. Você pode fornecer implementações concretas destes métodos caso queira inserir algum código extra. Vamos fazer mais uma experimentação antes de encerrar este tutorial. Abra o arquivo PersonForm.page e remova o elemento <property name= name />. Rode a aplicação e veja que ela continua a funcionar. Isso acontece porquê o Tapestry verifica se existem métodos abstratos na classe PersonForm e tenta fornecer implementações concretas desses métodos. No nosso caso, a classe possui um método abstrato getname(), então o Tapestry assume que uma propriedade name deve ser criada, juntamente com os métodos getname() e setname(string). Conclusão Chegamos ao fim do primeiro tutorial. Espero ter atingido o objetivo principal, que é ajudar o desenvolvedor Java que nunca teve uma oportunidade de aprender um pouco mais sobre o Tapestry. Também fiz este tutorial pela falta de referência prática sobre o Tapestry em português. Embora este tutorial seja bem introdutório, ele mostra algumas particularidades do Tapestry que costumam causar bastante confusão aos novatos, levando muitos a desistirem de usá-lo. Mas seja forte! Pode ser que você veja no Tapestry aquilo que sente falta em outros frameworks... mas só saberá se tentar! 14

15 Recursos utilizados neste tutorial 1. Tapestry Framework. ; 2. NetBeans IDE. ; 3. nbtapestrysupport. https://nbtapestrysupport.dev.java.net/ ; 4. Tomcat. ; 5. Sun Java System AS. ; 6. Toplink. ; 7. Hivemind. ; 8. Spring Framework. ; 9. OGNL Object Graph Navigation Language. ; Referências 1. Enjoying Web Development With Tapestry, de Kent Tong Ka Iok; 2. Documentações dos frameworks. Ver seção anterior. Sobre o autor Daniel Fernandes Martins é formado em Sistemas de Informação pela faculdade Gennari & Peartree de Pederneiras/SP e possui dois anos de experiência como desenvolvedor Java. Possui a certificação SCJP 1.4 e estava com uma unha encravada quando escreveu este tutorial. Como se não fosse o bastante, ele tenta mantém um site pessoal em e pode ser contactado através do dfmwork arroba gmail.com. 15

Aula 03 - Projeto Java Web

Aula 03 - Projeto Java Web Aula 03 - Projeto Java Web Para criação de um projeto java web, vá em File/New. Escolha o projeto: Em seguida, na caixa Categorias selecione Java Web. Feito isso, na caixa à direita selecione Aplicação

Leia mais

Criação de um novo projeto no Eclipse utilizando Maven

Criação de um novo projeto no Eclipse utilizando Maven 1. Faça o download da versão mais atual do Eclipse IDE for Java EE Developers em https://www.eclipse.org/downloads/. 2. No Eclipse, crie um novo projeto Maven, em File >> New >> Maven Project 3. Marque

Leia mais

TUTORIAL SPRING SECURITY PROGRAMAÇÃO COM FRAMEWORKS Responsáveis: Ana Luíza Cruvinel, Maikon Franczak e Wendel Borges

TUTORIAL SPRING SECURITY PROGRAMAÇÃO COM FRAMEWORKS Responsáveis: Ana Luíza Cruvinel, Maikon Franczak e Wendel Borges Versão 1.0 TUTORIAL SPRING SECURITY PROGRAMAÇÃO COM FRAMEWORKS Responsáveis: Ana Luíza Cruvinel, Maikon Franczak e Wendel Borges Data: 01/12/2014 SUMÁRIO 1. INTRODUÇÃO... 2 2. O QUE É SPRING SECURITY?...

Leia mais

Criação de Servlets Name Directory Build WAR JSP/Servlet frameworks Launch URL Package Class name Generate header comments

Criação de Servlets Name Directory Build WAR JSP/Servlet frameworks Launch URL Package Class name Generate header comments Criação de Servlets 1. Crie um novo projeto através do Menu File New Project. 2. Acesse o Menu File New. 3. Na janela Object Gallery que surgirá, selecione a guia Web. 4. Escolha o ícone que corresponde

Leia mais

Scriptlets e Formulários

Scriptlets e Formulários 2 Scriptlets e Formulários Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Permitir ao aluno aprender a criar um novo projeto Java para web no Netbeans IDE,

Leia mais

FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES. 5º PERÍODO Gestão da Tecnologia da Informação

FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES. 5º PERÍODO Gestão da Tecnologia da Informação FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES 5º PERÍODO Gestão da Tecnologia da Informação Alunos: Alessandro Aparecido André Alexandre Bruno Santiago Thiago Castilho

Leia mais

Manual de Instalação: Agente do OCS Inventory NG

Manual de Instalação: Agente do OCS Inventory NG Manual de Instalação: Agente do OCS Inventory NG Abril 2013 Sumário 1. Agente... 1 2. Onde instalar... 1 3. Etapas da Instalação do Agente... 1 a. Etapa de Instalação do Agente... 1 b. Etapa de Inserção

Leia mais

Manual de Instalação. SafeNet Authentication Client 8.2 SP1. (Para MAC OS 10.7)

Manual de Instalação. SafeNet Authentication Client 8.2 SP1. (Para MAC OS 10.7) SafeNet Authentication Client 8.2 SP1 (Para MAC OS 10.7) 2/28 Sumário 1 Introdução... 3 2 Pré-Requisitos Para Instalação... 3 3 Ambientes Homologados... 4 4 Tokens Homologados... 4 5 Instruções de Instalação...

Leia mais

Demoiselle Tutorial Módulo 1 Arquitetura

Demoiselle Tutorial Módulo 1 Arquitetura Demoiselle Tutorial Módulo 1 Arquitetura Vanderson Botelho da Silva (SERPRO/SUPST/STCTA) Emerson Sachio Saito (SERPRO/CETEC/CTCTA) Flávio Gomes da Silva Lisboa (SERPRO/CETEC/CTCTA) Serge Normando Rehem

Leia mais

DWR DIRECTED WEB REMOTING

DWR DIRECTED WEB REMOTING DWR DIRECTED WEB REMOTING Vamos ver nesse artigo um pouco sobre o Frameworks Ajax para Java, o DWR. Vamos ver seus conceitos, utilidades, vantagens, algumas práticas e fazer o passo a passo para baixar,

Leia mais

INTRODUÇÃO À TECNOLOGIA SERVLETS

INTRODUÇÃO À TECNOLOGIA SERVLETS PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB INTRODUÇÃO À TECNOLOGIA SERVLETS Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o conceito aplicações orientada a serviços via web Apresentar o papel dos contentores

Leia mais

2 Requisitos Mínimos... 2. 1 Visão Geral 2 Instalando o SDK... da Sun 3 Instalando o Tomcat... do Apache Jakarta Project 4 Instalando o WebIntegrator

2 Requisitos Mínimos... 2. 1 Visão Geral 2 Instalando o SDK... da Sun 3 Instalando o Tomcat... do Apache Jakarta Project 4 Instalando o WebIntegrator Conteúdo I Conteúdo Part I Introdução 2 1 Apresentação... 2 2 Requisitos Mínimos... 2 Part II Instruções de Instalação 2 1 Visão Geral... 2 2 Instalando o SDK... da Sun 2 3 Instalando o Tomcat... do Apache

Leia mais

O sistema operacional recomendado deve ser o Windows 2003, Windows 2000 ou Windows XP (nessa ordem de recomendação).

O sistema operacional recomendado deve ser o Windows 2003, Windows 2000 ou Windows XP (nessa ordem de recomendação). Módulo Nota Fiscal Eletrônica Sispetro Roteiro de Instalação Módulo Autenticador NFE Pré-Requisitos O sistema operacional recomendado deve ser o Windows 2003, Windows 2000 ou Windows XP (nessa ordem de

Leia mais

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH!

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH! UNIVERSIDADE DE SÃO PAULO (USP) ESCOLA DE ARTES, CIÊNCIAS E HUMANIDADES (EACH) TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH! Autoria e revisão por: PET Sistemas

Leia mais

Instruções Básicas de Instalação - BrOffice.org

Instruções Básicas de Instalação - BrOffice.org Instruções Básicas de Instalação - BrOffice.org Instruções Básicas de Instalação Instalação no Windows 98/ME/NT/2000/XP Para fazer a instalação do BrOffice.org no seu sistema Windows, siga os passos abaixo:

Leia mais

Acessando um Banco de Dados

Acessando um Banco de Dados Acessando um Banco de Dados Introdução Agora que você já está craque em JSP e já instalou seu servidor, vamos direto para a parte prática! Neste tutorial vamos aprender a acessar um banco de dados. Para

Leia mais

Esse manual é um conjunto de perguntas e respostas para usuários(as) do Joomla! 1.5.

Esse manual é um conjunto de perguntas e respostas para usuários(as) do Joomla! 1.5. Esse manual é um conjunto de perguntas e respostas para usuários(as) do Joomla! 1.5. Ele considera que você já tem o Joomla! instalado no seu computador. Caso você queira utilizá lo em um servidor na web,

Leia mais

Java para WEB. Servlets

Java para WEB. Servlets Servlets Servlets são classes Java que são instanciadas e executadas em associação com servidores Web, atendendo requisições realizadas por meio do protocolo HTTP. Servlets é a segunda forma que veremos

Leia mais

TUTORIAL JSP & SERVLET

TUTORIAL JSP & SERVLET TUTORIAL JSP & SERVLET A.A.S. UNINOVE WWW.AAS.PRO.BR Exemplo simples de JSP com Servlet (para envio e recebimento de dados) Sumário JSP & SERVLET... 2 1. Criando Projeto... 2 2. O primeiro JSP... 3 3.

Leia mais

WebWork 2. João Carlos Pinheiro. jcpinheiro@cefet-ma.br

WebWork 2. João Carlos Pinheiro. jcpinheiro@cefet-ma.br WebWork 2 João Carlos Pinheiro jcpinheiro@cefet-ma.br Versão: 0.5 Última Atualização: Agosto/2005 1 Agenda Introdução WebWork 2 & XWork Actions Views Interceptadores Validação Inversão de Controle (IoC)

Leia mais

Descompacte o arquivo site-1.2.4.zip que foi baixado dentro da pasta do eclipse.

Descompacte o arquivo site-1.2.4.zip que foi baixado dentro da pasta do eclipse. 3 Manual do Desenvolvedor 3.1 Introdução O site que disponibiliza o SIGATI utiliza o sistema de SVN que é um programa de controle de versão de softwares utilizado no Trac. Com ele o desenvolvedor pode

Leia mais

mkdir /srv/www/default/html/calculadora/imagens mkdir /srv/www/default/html/calculadora/blocos

mkdir /srv/www/default/html/calculadora/imagens mkdir /srv/www/default/html/calculadora/blocos Programando em PHP www.guilhermepontes.eti.br lgapontes@gmail.com Criando uma Calculadora Primeiramente deve se criar uma estrutura para armazenar os arquivos necessários para o funcionamento da calculadora.

Leia mais

Nome N Série: Ferramentas

Nome N Série: Ferramentas Nome N Série: Ferramentas Competências: Identificar e utilizar técnicas de modelagem de dados; Habilidades: Utilizar ferramentas de apoio ao desenvolvimento de software; Bases Tecnológicas: Metodologias

Leia mais

Ambientação JAVA. Versão 0.1 MICHEL CORDEIRO ANALISTA DE NEGÓCIO (NTI 2014) 1 UNIVERSIDADE CEUMA 08/01/2014

Ambientação JAVA. Versão 0.1 MICHEL CORDEIRO ANALISTA DE NEGÓCIO (NTI 2014) 1 UNIVERSIDADE CEUMA 08/01/2014 UNIVERSIDADE CEUMA Ambientação JAVA Versão 0.1 08/01/2014 Este é um modelo de configuração para desenvolvimento no ambiente Java. MICHEL CORDEIRO ANALISTA DE NEGÓCIO (NTI 2014) 1 Sumário Sumário... 2 1

Leia mais

Tutorial para criação de componentes JSF Facelets Por Érico GR 07/08/2007

Tutorial para criação de componentes JSF Facelets Por Érico GR 07/08/2007 Tutorial para criação de componentes JSF Facelets Por Érico GR 07/08/2007 Nível: Intermediário Este tutorial tem como objetivo criar um simples componente que renderiza uma tag label utilizando recursos

Leia mais

SCPIWeb. SCPIWebDespRec Aplicação Web para Consulta de Despesas e Receitas ( Lei Complementar nº 131 de 27 Maio de 2009 )

SCPIWeb. SCPIWebDespRec Aplicação Web para Consulta de Despesas e Receitas ( Lei Complementar nº 131 de 27 Maio de 2009 ) 2010 SCPIWebDespRec Aplicação Web para Consulta de Despesas e Receitas ( Lei Complementar nº 131 de 27 Maio de 2009 ) SCPIWebCotacao Aplicação Web para Cotação de Preços via Internet Resumo de Instruções

Leia mais

Aprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte.

Aprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte. Omondo EclipseUML Ricardo Rodrigues Lecheta Aprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte. Introdução Neste tutorial será apresentado

Leia mais

TUTORIAL SISTEMA DE CONTROLE DE ACESSO

TUTORIAL SISTEMA DE CONTROLE DE ACESSO FACULDADE DE TECNOLOGIA SENAC GOIÁS GESTÃO EM TECNOLOGIA DA INFORMAÇÃO WISLIY LOPES JULIANO PIROZZELLI TULIO TSURUDA LUIZ GUILHERME MENDES TUTORIAL SISTEMA DE CONTROLE DE ACESSO GOIÂNIA JUNHO DE 2014 Sumário

Leia mais

Material de apoio a aulas de Desenvolvimento Web. Tutorial Java WEB JSP & HTML & CSS & CLASSE & OBJETOS. AAS - www.aas.pro.

Material de apoio a aulas de Desenvolvimento Web. Tutorial Java WEB JSP & HTML & CSS & CLASSE & OBJETOS. AAS - www.aas.pro. Material de apoio a aulas de Desenvolvimento Web Tutorial Java WEB JSP & HTML & CSS & CLASSE & OBJETOS AAS - www.aas.pro.net Março-2012 Este pequeno tutorial tem como objetivo conduzir o programador passo-a-passo

Leia mais

Tutorial Módulo 06 - Segurança

Tutorial Módulo 06 - Segurança LABORATÓRIO 06 Segurança Este laboratório tem por objetivo exercitar o uso do componente de segurança do Framework e uso da especificação JAAS. Objetivos: Uso do Login Module do Componente de Segurança

Leia mais

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 Índice 1 - Objetivo 2 - Descrição do ambiente 2.1. Tecnologias utilizadas 2.2. Estrutura de pastas 2.3. Bibliotecas já incluídas 3 - Características gerais 4 - Criando

Leia mais

Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.

Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova. 3.5 Páginas: Ao clicar em Páginas, são exibidas todas as páginas criadas para o Blog. No nosso exemplo já existirá uma página com o Título Página de Exemplo, criada quando o WorPress foi instalado. Ao

Leia mais

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse Como criar um EJB Criando um projeto EJB com um cliente WEB no Eclipse Gabriel Novais Amorim Abril/2014 Este tutorial apresenta o passo a passo para se criar um projeto EJB no Eclipse com um cliente web

Leia mais

INTRODUÇÃO AO DESENVOLVIMENTO DE JOGOS COM LIBGDX. Vinícius Barreto de Sousa Neto

INTRODUÇÃO AO DESENVOLVIMENTO DE JOGOS COM LIBGDX. Vinícius Barreto de Sousa Neto INTRODUÇÃO AO DESENVOLVIMENTO DE JOGOS COM LIBGDX Vinícius Barreto de Sousa Neto Libgdx é um framework multi plataforma de visualização e desenvolvimento de jogos. Atualmente ele suporta Windows, Linux,

Leia mais

Instalando o IIS 7 no Windows Server 2008

Instalando o IIS 7 no Windows Server 2008 Goiânia, 16/09/2013 Aluno: Rafael Vitor Prof. Kelly Instalando o IIS 7 no Windows Server 2008 Objetivo Esse tutorial tem como objetivo demonstrar como instalar e configurar o IIS 7.0 no Windows Server

Leia mais

Instalando o IIS 7 no Windows Server 2008

Instalando o IIS 7 no Windows Server 2008 Goiânia, 16/09/2013 Aluno: Rafael Vitor Prof. Kelly Instalando o IIS 7 no Windows Server 2008 Objetivo Esse tutorial tem como objetivo demonstrar como instalar e configurar o IIS 7.0 no Windows Server

Leia mais

CRIANDO TEMPLATES E LEGENDAS

CRIANDO TEMPLATES E LEGENDAS CRIANDO TEMPLATES E LEGENDAS Este tutorial tem como objetivo instruir passo à passo como criar templates de peças, utilizar os novos recursos de cadastro de propriedade de peças e criação de legenda. 1-

Leia mais

Tutorial: Serviços web e suas composições

Tutorial: Serviços web e suas composições Tutorial: Serviços web e suas composições Objetivo: Este tutorial tem como objetivo apresentar o desenvolvimento de serviços web através do framework Axis2. Além disso, realizar uma composição através

Leia mais

Relatório do GPES. Descrição dos Programas e Plugins Utilizados. Programas Utilizados:

Relatório do GPES. Descrição dos Programas e Plugins Utilizados. Programas Utilizados: Relatório do GPES Relatório referente à instalação dos programas e plugins que estarão sendo utilizados durante o desenvolvimento dos exemplos e exercícios, sendo esses demonstrados nos próximos relatórios.

Leia mais

Instalando o Lazarus e outros sistemas de suporte. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Instalando o Lazarus e outros sistemas de suporte. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Instalando o Lazarus e outros sistemas de suporte Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 1 Levante e ande - Instalando o Lazarus e outros sistemas de suporte. Ano: 02/2011 Nesta Edição

Leia mais

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1 DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1 1 Sumário 1 - Instalação Normal do Despachante Express... 3 2 - Instalação do Despachante Express em Rede... 5 3 - Registrando o Despachante Express...

Leia mais

Instalando o WordPress em localhost

Instalando o WordPress em localhost Instalando o WordPress em localhost WordPress sem Mistério LEE ARAUJO htto://wordpresssemmisterio.com.br Sumário Instalando o WordPress em Localhost... 2 O Servidor web... 3 Iniciando o servidor... 6 Criação

Leia mais

Downloads no EU VOU PASSAR 2.0

Downloads no EU VOU PASSAR 2.0 Downloads no EU VOU PASSAR 2.0 Conteúdo Instalando o Orbit Downloader... 1 Configurando o Orbit Downloader para o EU VOU PASAR 2.0... 8 Realizando os Downloads no Eu Vou Passar 2.0... 12 Fazendo o Download

Leia mais

OMT-G Design. Instalação por pacotes

OMT-G Design. Instalação por pacotes OMT-G Design A plataforma Eclipse OMT-G Design não é um software independente, é um plug-in que se utiliza dos mecanismos de extensão do Eclipse que por sua vez é um ambiente de desenvolvimento de software.

Leia mais

MANUAL DO ANIMAIL 1.0.0.1142 Terti Software

MANUAL DO ANIMAIL 1.0.0.1142 Terti Software O Animail é um software para criar campanhas de envio de email (email Marketing). Você pode criar diversas campanhas para públicos diferenciados. Tela Principal do sistema Para melhor apresentar o sistema,

Leia mais

Tutorial: Criando aplicações J2EE com Eclipse e jboss-ide

Tutorial: Criando aplicações J2EE com Eclipse e jboss-ide Tutorial: Criando aplicações J2EE com Eclipse e jboss-ide Para criar uma aplicação J2EE, utilizando Eclipse e jboss-ide, é necessário ter instalado em seu computador o JDK 1.5 (versão atual). Abaixo seguem

Leia mais

Lógica de Programação

Lógica de Programação Lógica de Programação Unidade 4 Ambiente de desenvolvimento Java QI ESCOLAS E FACULDADES Curso Técnico em Informática SUMÁRIO A LINGUAGEM JAVA... 3 JVM, JRE, JDK... 3 BYTECODE... 3 PREPARANDO O AMBIENTE

Leia mais

Criando & Consumindo um WebService com ASP.NET 2.0 Publicado em: 25 de Agosto de 2007 Por Herman Ferdinando Arais

Criando & Consumindo um WebService com ASP.NET 2.0 Publicado em: 25 de Agosto de 2007 Por Herman Ferdinando Arais ASP.NET > WebService herman_arais@yahoo.com.br Introdução Um WebService é um componente, ou unidade lógica de aplicação, acessível através de protocolos padrões de Internet. Como componentes, esses serviços

Leia mais

Instalando servidor Apache com MySQL e as linguagens ColdFusion e PHP. XAMPP 1.6.7 (xampp-win32-1.6.7-installer.exe), veja aqui.

Instalando servidor Apache com MySQL e as linguagens ColdFusion e PHP. XAMPP 1.6.7 (xampp-win32-1.6.7-installer.exe), veja aqui. Instalando servidor Apache com MySQL e as linguagens ColdFusion e PHP. Escrito por Marcio Nakano (marcionakano.com.br) Data: 29/09/2008 Disponível em http:///blog/post/instalando-apache-mysql-coldfusionphp.pdf

Leia mais

JDBC Java Database Connectivity

JDBC Java Database Connectivity 5 JDBC Java Database Connectivity Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Trabalhar com bancos de dados em aplicações web em JSP através das classes

Leia mais

CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO

CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO Antes de criarmos um novo Banco de Dados quero fazer um pequeno parênteses sobre segurança. Você deve ter notado que sempre

Leia mais

Criação de Applets com o JBuilder Professor Sérgio Furgeri

Criação de Applets com o JBuilder Professor Sérgio Furgeri OBJETIVOS DA AULA: Apresentar o processo de criação em uma interface gráfica para a Internet; Fornecer subsídios para que o aluno possa compreender onde aplicar Applets; Demonstrar a criação de uma Applet

Leia mais

Sumário. 1 Tutorial: Blogs no Clickideia

Sumário. 1 Tutorial: Blogs no Clickideia 1 Tutorial: Blogs no Clickideia Sumário Introdução... 2 Objetivos... 2 Instruções para utilização do Tutorial... 2 Acesso ao Portal e a Home Blog... 3 Página Inicial da área do Blog... 4 Apresentação da

Leia mais

Módulo e-rede OpenCart v1.0. Manual de. Instalação do Módulo. estamos todos ligados

Módulo e-rede OpenCart v1.0. Manual de. Instalação do Módulo. estamos todos ligados Módulo e-rede OpenCart v1.0 Manual de Instalação do Módulo estamos todos ligados ÍNDICE 01 02 03 04 Introdução 3 Versão 3 Requerimentos 3 Manual de instalação 4 05 06 4.1 vqmod 4 4.2 Instalação e ativação

Leia mais

Criando uma agenda simples com NetBeans 6.5

Criando uma agenda simples com NetBeans 6.5 Criando uma agenda simples com NetBeans 6.5 (Swing application framework e Beansbinding) Já faz algum tempo que escrevi uma agenda simples usando o Eclipse com o Visual Class Editor. Demorei em torno de

Leia mais

Criando e Entendendo o Primeiro Servlet Por: Raphaela Galhardo Fernandes

Criando e Entendendo o Primeiro Servlet Por: Raphaela Galhardo Fernandes Criando e Entendendo o Primeiro Servlet Por: Raphaela Galhardo Fernandes Resumo Neste tutorial serão apresentados conceitos relacionados a Servlets. Ele inicial como uma breve introdução do funcionamento

Leia mais

NOVIDADES DO JAVA PARA PROGRAMADORES C

NOVIDADES DO JAVA PARA PROGRAMADORES C PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB NOVIDADES DO JAVA PARA PROGRAMADORES C Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o Conceito de Classes e Objetos Capacitar para a criação de objetos simples

Leia mais

Parte I. Demoiselle Mail

Parte I. Demoiselle Mail Parte I. Demoiselle Mail Para o envio e recebimento de e-s em aplicativos Java, a solução mais natural é usar a API JavaMail [http:// www.oracle.com/technetwork/java/java/index.html]. Ela provê um framework

Leia mais

02 - Usando o SiteMaster - Informações importantes

02 - Usando o SiteMaster - Informações importantes 01 - Apresentação do SiteMaster - News Edition O SiteMaster foi desenvolvido para ser um sistema simples de gerenciamento de notícias, instalado em seu próprio computador e com configuração simplificada,

Leia mais

Java Server Pages: Apresentação e Instalação

Java Server Pages: Apresentação e Instalação 1 Java Server Pages: Apresentação e Instalação Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Apresentar a tecnologia Java Server Pages; Instalar e configurar

Leia mais

Integrando Eclipse e Websphere Application Server Community Edition

Integrando Eclipse e Websphere Application Server Community Edition 1 Integrando Eclipse e Websphere Application Server Community Edition Sobre o Autor Carlos Eduardo G. Tosin (carlos@tosin.com.br) é formado em Ciência da Computação pela PUC-PR, pós-graduado em Desenvolvimento

Leia mais

Criar um novo projeto

Criar um novo projeto Criar um novo projeto Esse passo-a-passo tem o intuito de auxiliar na criação de um novo projeto Java. Você verá os passos de criação utilizando os IDEs Eclipse e NetBeans. Eclipse 1. Inicie o Eclipse.

Leia mais

Configurar o Furbot no Eclipse

Configurar o Furbot no Eclipse Configurar o Furbot no Eclipse Primeiramente, precisamos abrir o Eclipse. Logo no início, deverá aparecer uma tela assim: Nela, você irá selecionar o local do seu workspace. Workspace é o local onde ficarão

Leia mais

Associação Carioca de Ensino Superior Centro Universitário Carioca

Associação Carioca de Ensino Superior Centro Universitário Carioca Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos

Leia mais

Projeto Amadeus. Guia de Instalação 00.95.00 Windows

Projeto Amadeus. Guia de Instalação 00.95.00 Windows Projeto Amadeus Guia de Instalação 00.95.00 Windows Agosto 2010 Sumário 1. Introdução...3 2. Pré-Requisitos...4 2.1 Máquina Virtual Java...4 2.2 Apache TomCat 6.0.18...4 2.3 PostgreSQL 8.3...5 3. Instalando

Leia mais

NetBeans. Conhecendo um pouco da IDE

NetBeans. Conhecendo um pouco da IDE NetBeans Conhecendo um pouco da IDE Professor: Edwar Saliba Júnior Sumário Apresentação:...1 Criando Um Novo Projeto de Software:...1 Depurando Um Código-fonte:...4 Entendendo o Código-fonte:...7 Dica

Leia mais

1- ASP.NET - HTML Server Controls

1- ASP.NET - HTML Server Controls 1- ASP.NET - HTML Server Controls Os controles de servidor - Server Controls - HTML são tags HTML padrão, com exceção de possuirem o atributo : runat="server". Vejamos um código que ilustra isto: O atributo

Leia mais

Manual de Instalação e Configuração para Revendedores e Assinantes Virtual Server.

Manual de Instalação e Configuração para Revendedores e Assinantes Virtual Server. Manual de Instalação e Configuração para Revendedores e Assinantes Virtual Server. Parte I Cadastrando Sites no painel de controle Parte II Criando E-mail Parte III Configurando o Outlook do Cliente Última

Leia mais

Manual de Instalação. SafeSign Standard 3.0.77. (Para MAC OS 10.7)

Manual de Instalação. SafeSign Standard 3.0.77. (Para MAC OS 10.7) SafeSign Standard 3.0.77 (Para MAC OS 10.7) 2/23 Sumário 1 Introdução... 3 2 Pré-Requisitos Para Instalação... 3 3 Ambientes Homologados... 4 4 Hardware Homologado... 4 5 Instruções de Instalação... 5

Leia mais

Trecho retirando do Manual do esocial Versão 1.1

Trecho retirando do Manual do esocial Versão 1.1 Trecho retirando do Manual do esocial Versão 1.1 A rotina de acesso direto ao XML do S-1000, o usuário pode encontrar na opção de cadastro de Empresas do SIP. Sempre que o usuário localizar a figura ao

Leia mais

Criando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Criando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Criando Banco de Dados, Tabelas e Campos através do HeidiSQL Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 2 Pedreiros da Informação Criando Banco de Dados, Tabelas e Campos através do HeidiSQL

Leia mais

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Ao projetar uma aplicação Web, é importante considerála como sendo formada por três componentes lógicos: camada

Leia mais

WEBDESIGN. Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira

WEBDESIGN. Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira WEBDESIGN Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira Novo projeto com NetBeans A partir de hoje, vamos trabalhar com projetos no NetBeans

Leia mais

Minha primeira aplicação utilizando Java Server Faces + Glassfish

Minha primeira aplicação utilizando Java Server Faces + Glassfish Minha primeira aplicação utilizando Java Server Faces + Glassfish Este tutorial apresenta de forma simples, como iniciar no desenvolvimento com o framework Java Server faces 1.2, utilizando-se o servidor

Leia mais

Módulo e-rede VirtueMart v1.0. Manual de. Instalação do Módulo. estamos todos ligados

Módulo e-rede VirtueMart v1.0. Manual de. Instalação do Módulo. estamos todos ligados Módulo e-rede VirtueMart v1.0 Manual de Instalação do Módulo estamos todos ligados ÍNDICE 01 02 03 04 Introdução 3 Versão 3 Requerimentos 3 Manual de instalação 4 05 06 4.1 Permissões 4 4.2 Instalação

Leia mais

Instalando e Atualizando a Solução... 3. Arquivos de Instalação... 4. Instalação do Servidor de Aplicação... 7. Instalação JDK...

Instalando e Atualizando a Solução... 3. Arquivos de Instalação... 4. Instalação do Servidor de Aplicação... 7. Instalação JDK... Instalando e Atualizando a Solução... 3 Arquivos de Instalação... 4 Instalação do Servidor de Aplicação... 7 Instalação JDK... 7 Instalação Apache Tomcat... 8 Configurando Tomcat... 9 Configurando Banco

Leia mais

Apache Wicket. Apache Wicket

Apache Wicket. Apache Wicket wicket_ Apache Wicket Apache Wicket Um framework simplificado para construir páginas Web dinâmicas Qual desenvolvedor não gostaria de utilizar orientação a objetos na Web? Utilizar componentes reutilizáveis

Leia mais

GANHE DINHEIRO FACIL GASTANDO APENAS ALGUMAS HORAS POR DIA

GANHE DINHEIRO FACIL GASTANDO APENAS ALGUMAS HORAS POR DIA GANHE DINHEIRO FACIL GASTANDO APENAS ALGUMAS HORAS POR DIA Você deve ter em mente que este tutorial não vai te gerar dinheiro apenas por você estar lendo, o que você deve fazer e seguir todos os passos

Leia mais

Atualizaça o do Playlist Digital

Atualizaça o do Playlist Digital Atualizaça o do Playlist Digital Prezados Clientes, Nós da Playlist Software Solutions empresa líder de mercado no desenvolvimento de software para automação de rádios - primamos pela qualidade de nossos

Leia mais

Prática Sobre Servlets e JSP

Prática Sobre Servlets e JSP Prática Sobre Servlets e JSP 1. Localize a pasta do Tomcat (TOMCAT_HOME); 2. Acesse a pasta bin e execute tomcat5w.exe; 3. Abra o Navegador e acesse http://localhost:8080 (A apresentação de uma página

Leia mais

OWL-S Composer. MATE15 - Tópicos Especiais em Banco de Dados III. 17 de Julho de 2013. Marco Antonio Almeida 1 e Daniela Barreiro Claro 2

OWL-S Composer. MATE15 - Tópicos Especiais em Banco de Dados III. 17 de Julho de 2013. Marco Antonio Almeida 1 e Daniela Barreiro Claro 2 MATE15 - Tópicos Especiais em Banco de Dados III OWL-S Composer 17 de Julho de 2013 Marco Antonio Almeida 1 e Daniela Barreiro Claro 2 1 marco062@dcc.ufba.br 2 dclaro@ufba.br MOTIVAÇÃO E HISTÓRICO MOTIVAÇÃO

Leia mais

JSP trata-se de uma tecnologia que possibilita o desenvolvimento de páginas web dinâmicas utilizando todas as potencialidades do Java como linguagem

JSP trata-se de uma tecnologia que possibilita o desenvolvimento de páginas web dinâmicas utilizando todas as potencialidades do Java como linguagem 1 JSP trata-se de uma tecnologia que possibilita o desenvolvimento de páginas web dinâmicas utilizando todas as potencialidades do Java como linguagem orientada a objectos. Tal como em ASP e PHP, os ficheiros

Leia mais

Tutorial para atividades do Trabalho Prático da disciplina DCC 603 Engenharia de Software

Tutorial para atividades do Trabalho Prático da disciplina DCC 603 Engenharia de Software Tutorial para atividades do Trabalho Prático da disciplina DCC 603 Engenharia de Software Antes de iniciar o tutorial, baixar os seguintes arquivos da página do Prof. Wilson: Plataforma reutilizável: http://homepages.dcc.ufmg.br/~wilson/praxis/3.0/praxis.zip

Leia mais

Parte 2: Micro com Windows XP Pro e Servidor IIS

Parte 2: Micro com Windows XP Pro e Servidor IIS Parte 2: Micro com Windows XP Pro e Servidor IIS No nosso tutorial inicial: Tutorial: Monte um servidor Internet no seu micro de casa, vimos como colocar um nome internet no seu micro, utilizando o serviço

Leia mais

Integração entre o IBM HTTP SERVER, APACHE WEB Server e IBM Websphere Application Server

Integração entre o IBM HTTP SERVER, APACHE WEB Server e IBM Websphere Application Server Integração entre o IBM HTTP SERVER, APACHE WEB Server e IBM Websphere Application Server Índice Resumo sobre este documento... 3 Integrando o IBM HTTP Server com o IBM WebSphere Application Server... 3

Leia mais

GUIA INTEGRA SERVICES E STATUS MONITOR

GUIA INTEGRA SERVICES E STATUS MONITOR GUIA INTEGRA SERVICES E STATUS MONITOR 1 - Integra Services Atenção: o Integra Services está disponível a partir da versão 2.0 do software Urano Integra. O Integra Services é um aplicativo que faz parte

Leia mais

INSTALANDO E CONFIGURANDO O MY SQL

INSTALANDO E CONFIGURANDO O MY SQL INSTALANDO E CONFIGURANDO O MY SQL Este tutorial tem como objetivo mostrar como instalar o banco de dados My SQL em ambiente Windows e é destinado aqueles que ainda não tiveram um contato com a ferramenta.

Leia mais

Sistema de Recursos Humanos

Sistema de Recursos Humanos Sistema de Recursos Humanos Projeto 1 O objetivo desse sistema é gerenciar a admissão e a demissão de funcionários. Esse funcionário pode ou não ter dependentes. Esse funcionário está alocado em um departamento

Leia mais

PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ MANUAL DE UTILIZAÇÃO DO CVS NO ECLIPSE

PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ MANUAL DE UTILIZAÇÃO DO CVS NO ECLIPSE PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ MANUAL DE UTILIZAÇÃO DO CVS NO ECLIPSE Agosto 2007 Sumário de Informações do Documento Tipo do Documento: Manual Título do Documento: MANUAL DE UTILIZAÇÃO DO

Leia mais

Módulo e-rede OpenCart v1.0. Manual de. Instalação do Módulo. estamos todos ligados

Módulo e-rede OpenCart v1.0. Manual de. Instalação do Módulo. estamos todos ligados Módulo e-rede OpenCart v1.0 Manual de Instalação do Módulo estamos todos ligados 01 02 03 04 Introdução 3 Versão 3 Requerimentos 3 Manual de instalação 4 05 06 4.1 vqmod 4 4.2 Instalação e ativação do

Leia mais

Dominando Action Script 3

Dominando Action Script 3 Dominando Action Script 3 Segunda Edição (2014) Daniel Schmitz Esse livro está à venda em http://leanpub.com/dominandoactionscript3 Essa versão foi publicada em 2014-05-02 This is a Leanpub book. Leanpub

Leia mais

TISSNet Instalando e Configurando Schemas

TISSNet Instalando e Configurando Schemas Objetivos Gerais: Este documento tem por objetivo, instruir os credenciados da C. S. ASSISTANCE no processo de instalação e configuração do aplicativo TISSNet, facilitando desta forma o controle e envio

Leia mais

Textos Legais. TL Internet. Legislativa. Manual de Implantação

Textos Legais. TL Internet. Legislativa. Manual de Implantação Textos Legais TL Internet Legislativa Manual de Implantação Copyright GOVERNANÇABRASIL 2012 PRONIM TL INTERNET SUMÁRIO 1. REQUISITOS MÍNIMOS DE SISTEMA... 4 2. INSTALAÇÃO... 4 2.1. INSTALAÇÃO DO IIS 7.0...

Leia mais

Universidade da Beira Interior

Universidade da Beira Interior Universidade da Beira Interior Relatório Apresentação Java Server Pages Adolfo Peixinho nº4067 Nuno Reis nº 3955 Índice O que é uma aplicação Web?... 3 Tecnologia Java EE... 4 Ciclo de Vida de uma Aplicação

Leia mais

Arquivos de Instalação... 4. Instalação JDK... 7. Instalação Apache Tomcat... 8. Configurando Tomcat... 9

Arquivos de Instalação... 4. Instalação JDK... 7. Instalação Apache Tomcat... 8. Configurando Tomcat... 9 Instalando e Atualizando a Solução... 3 Arquivos de Instalação... 4 Instalação do Servidor de Aplicação... 7 Instalação JDK... 7 Instalação Apache Tomcat... 8 Configurando Tomcat... 9 Configurando Banco

Leia mais

J2EE. Exemplo completo Utilização Servlet. Instrutor HEngholmJr

J2EE. Exemplo completo Utilização Servlet. Instrutor HEngholmJr J2EE Exemplo completo Utilização Servlet Instrutor HEngholmJr Page 1 of 9 AT09 Exemplo complete Utilização Servlet Version 1.1 December 5, 2014 Indice 1. BASEADO NOS EXEMPLOS DE CÓDIGO DESTA APOSTILA,

Leia mais

ÍNDICE 1.CONHECENDO OS APLICATIVOS NECESSÁRIOS PARA O FUNCIONAMENTO DO SISTEMA URANO INTEGRA...

ÍNDICE 1.CONHECENDO OS APLICATIVOS NECESSÁRIOS PARA O FUNCIONAMENTO DO SISTEMA URANO INTEGRA... Instalação do Sistema Urano Integra em Sistema Operacional Windows 1 ÍNDICE 1.CONHECENDO OS APLICATIVOS NECESSÁRIOS PARA O FUNCIONAMENTO DO SISTEMA URANO INTEGRA.... 3 1.1 URANO INTEGRA... 3 1.2 JAVA RUNTIME

Leia mais