Primeiro Projeto

Criar novo projeto Tapestry 5.1.x no Eclipse:

  • Eclipse menu //File -> New -> Other… -> Maven Project -> Next
  • Catalog: Tapestry5.1
  • Artifact Id: Quickstart
  • Next

Informar os dados do projeto:

  • Group Id: org.exemplo
  • Artifact Id: t5teste
  • Package: org.exemplo.t5teste
  • Finish

Configurar a execução do projeto de dentro do Eclipse.

  • menu Run -> Run Configurations… -> Maven Builds -> New launch configuration

Preecher os campos:

  • Name: t5teste
  • Base directory: ${workspace_loc:/t5teste}
  • Goals: jetty:run
MavenLaunch
  • Run

http://localhost:8080/t5teste

Index

No primeiro teste o Maven vai fazer o download das dependências e também do Jetty.

Linha de comando

Existe outra maneira de criar e testar um novo projeto Tapestry 5.1, através de linha de comando.
Para criar novo projeto usando uma janela de terminal, linux ou MSDOS, entre na pasta "workspace" e execute o comando:

Informe os dados solicitados pelo Maven:

  • Define value for groupId: : org.exemplo
  • Define value for artifactId: : t5teste
  • Define value for version: 1.0-SNAPSHOT: :
  • Define value for package: org.exemplo: : org.exemplo.t5teste
  • Y: : y

Para testar entre na pasta do novo projeto e execute o comando:

  • mvn jetty:run

Para criar os arquivos do projeto no Eclipse (.project e .classpath), execute o comando abaixo na pasta do novo projeto, depois importe para o Eclipse.

  • mvn eclipse:eclipse

Acompanhando o que acontece ao chamar a aplicação no browser

Ao chamar a aplicação o tapestry vai renderizar a página inicial (Index). Uma das características do tapestry é que seus templates TML (Tapestry Markup Language) usam praticamente html puro, sem código java incompreensível, isso facilita a integração entre o webdesigner e o desenvolvedor java.

  • No código do template Index.tml a tag “não html” ${currentTime} representa uma expansão dinâmica. O framework vai chamar o método getCurrentTime(), depois vai converter seu resultado em string e inserir dentro da página que volta para o browser.
  • A tag t:pagelink t:page=”Index” diz ao framework para gerar uma URL para chamar uma página ("Index" nesse caso).

Ao clicar no link enviamos uma requisição para renderizar a página Index, o template e a classe java são reutilizados pelo tapestry para gerar a página html que será enviada ao browser, como resultado temos a data e hora atual.

Função dos principais arquivos gerados no projeto:

  • Index.java e Index.tml são, respectivamente, a classe java e o template html do página inicial.
  • Layout.java e Layout.tml são, respectivamente, a classe java e o template html do componente Layout.
  • AppModule.java é utilizado para configuração do framework e para informar as ”contribuições”. As contribuições são uma maneira de você extender o tapestry com suas próprias funcionalidades.
  • app.properties é o catálogo de mensagens global da aplicação.
  • pom.xml é o arquivo de configurações usado pelo Maven para gerenciar um projeto.
  • web.xml é o arquivo de configuração do aplicativo dentro do servidor de aplicações (Container Web), é onde se declara o(s) servlet(s) e outras características da aplicação. Usando tapestry não é necessário declarar nenhum servlet. O tapestry está declarado nesse arquivo como um filtro (Servlet filter), assim ele recebe e trata todas as requisições enviadas para o endereço http: //SERVIDOR/t5teste/*.
  • favicon.ico é a imagem usada pelo browser na aba da página.
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License