18VRaptor Scaffold
O VRaptor 3 agora possui uma extensão chamada VRaptor Scaffold, que tem por finalidade facilitar a configuração de novos projetos e plugins.
Instalação
Para instalar o VRaptor Scaffold é necessário ter instalado o Ruby e o rubygems. Você pode encontrar informações de instalação na página de downloads do Ruby. Tendo isso instalado, basta executar o comando a seguir.
gem install vraptor-scaffold
Começando um projeto
Abra um terminal e digite:
vraptor new onlinestore
Esse comando vai criar toda a estrutra da aplicação, após isso entre na pasta onlinestore e execute a task jetty do ant:
ant jetty.run
Abra o browser no endereço http://localhost:8080 e você deve ver It works!. Agora vamos criar um cadastro completo (CRUD) de produtos para nossa loja virtual, para isso basta executar
vraptor scaffold product name:string value:double
Execute novamente:
ant jetty.run
Acesse http://localhost:8080/products
Package
O pacote raiz por padrão é app, para mudar isso crie a aplicação com o seguinte comando:
vraptor new onlinestore --package=br.com.caelum
Você também pode configurar os pacotes de modelos, controllers e repositórios:
vraptor new onlinestore --package=br.com.caelum -m modelo -c controlador -r repositorio
Build: Maven, Gradle ou Ivy
O VRaptor Scaffold gera um projeto com ant e ivy por padrão, mas você pode escolher outra ferramenta de build com um simples comando na hora de criar seu projeto:
# for maven
vraptor new onlinestore --build-tool=mvn
# for gradle
vraptor new onlinestore --build-tool=gradle
Ao usar gradle, utilize:
gradle jettyRun
para rodar a aplicação.
ORM: JPA ou Hibernate, connection pool
Um projeto novo já vem por padrão com o c3p0 configurado. Além disso você pode escolher entre JPA (EntityManager, padrão), ou Hibernate (Session), ao criar seu projeto:
vraptor new onlinestore -o=jpa
vraptor new onlinestore -o=hibernate
Freemarker
O template engine padrão é JSP, para utilizar o freemarker, crie a aplicação com:
vraptor new onlinestore --template-engine=ftl
Eclipse
Se você optou pelo maven execute:
mvn eclipse:eclipse
Para gerar os arquivos de configuração do Eclipse, após isso apenas faça a importação do projeto normalmente.
Se você optou pelo ant, os arquivos de configuração serão gerados no momento em que criar o projeto, não se esqueça de executar:
ant compile
para baixar todas as dependências antes de importar o projeto.
É possível pular a criação desses arquivos com o comando:
vraptor new onlinestore --skip-eclipse
Tipos de atributos suportados
É possível gerar um CRUD com os seguintes atributos: boolean, double, float, short, integer, long, string, text, date e references.
Plugins
Plugins do vraptor são facilmente instalados com o comando:
vraptor plugin simple-email -v 1.0.0
Você pode encontrar uma lista de plugins disponíveis no repositório GitHub do vraptor-contrib
jQuery
A versão do jQuery é sempre a última disponível para download, para utilizar uma versão anterior use o comando:
vraptor new onlinestore -j 1.4.4
Heroku
Agora é possível fazer um deploy de qualquer aplicação java no Heroku com um simples:
git push heroku master
E o VRaptor Scaffold já tem um comando que gera toda a aplicação do jeito que o Heroku espera. Para isso basta utilizar o comando:
vraptor new onlinestore --heroku
Depois é só fazer o deploy da sua aplicação seguindo os passos do Heroku. Para mais informações acesse o site do Heroku para Java.
Comando Help
Para visualizar a lista de comandos disponibilizados pelo vraptor-scaffold, execute:
vraptor -h
vraptor new -h
vraptor scaffold -h
vraptor plugin -h
Contribuindo
O projeto está sendo desenvolvido em ruby e o código fonte está hospedado no github. Você pode colaborar com o projeto fazendo o fork e enviando seu path ou uma nova funcionalide. Não se esqueça dos testes.