Sua primeira aplicação com o VRaptor

Seu primeiro passo será instalar o VRaptor 2 em um projeto novo. Para isso siga as instruções do tutorial de configuração.

Vamos começar usando uma classe de modelo bem simples, que representa uma pessoa com seu nome, endereço e idade. Não se esqueça de gerar os getters e setters de sua classe de modelo. Crie o arquivo chamado Pessoa.java no diretório src/org/vraptor/exemplo.

package org.vraptor.exemplo;

public class Pessoa {
        private String nome;
        private String endereco;
        private Long idade;
        // getters e setters aqui
}

O segundo passo consiste em criar nossa classe de lógica, que simula a criação de uma nova pessoa, algo como PessoaLogic.java, por exemplo, no diretório src/org/vraptor/exemplo/logica.

package org.vraptor.exemplos.logic;

import org.vraptor.annotations.Component;
import org.vraptor.annotations.Logic;
import org.vraptor.annotations.Parameter;
import org.vraptor.annotations.Out;

@Component("pessoa")
public class PessoaLogic {

        @Parameter
        @Out
        private Pessoa pessoa = new Pessoa();

        public void adiciona() {
            // aqui adicionariamos a pessoa no banco de dados
            // vamos apenas dar um sysout como exemplo  
                System.out.println("Adicionando " + pessoa.getNome() 
                  " em " + pessoa.getEndereco());
        }

}

Vamos começar pelas anotações:

Essas são as três principais anotações do VRaptor e nesse momento você aprendeu quase tudo que é necessário para fazer uma aplicação utilizando o mesmo.

Agora precisamos de dois arquivos jsp, o primeiro chamado index.jsp no diretório web, que mostra um formulário, que será responsável por acessar o endereço pessoa.adiciona.logic.

<html>
<form action="pessoa.adiciona.logic" method="get">
        Nome: <input name="pessoa.nome"/><br/>
        Endereço: <input name="pessoa.endereco"/><br/>
        Idade: <input name="pessoa.idade"/><br/>
        <input type="submit"/>
</form>
</html>

Agora veremos o JSP para o qual seremos redirecionados após a execução do método adiciona da classe Pessoa. Ele se chama adiciona.ok.jsp e fica no diretório web/pessoa. O VRaptor utiliza padrões nos nomes de arquivos de visualização, para evitar configurações.

Nesse caso, o nosso componente se chama pessoa, portanto o nome do diretório é pessoa. O nome do arquivo é dado pela composição do nome da sua lógica concatenado com o retorno dela, que por padrão é ok, portanto adiciona.ok.jsp.

Você poderia configurar o VRaptor para mudar o padrão de nomenclatura dos arquivos jsp, ou configurar um por um, para cada lógica, como você verá nos tutoriais avançados.

Note que o código a seguir utiliza a variável que foi enviada com o nome de pessoa, por causa da anotação @Out em nossa lógica:

<html>
        Você criou uma nova pessoa chamada ${pessoa.nome},
        que mora em ${pessoa.endereco}
        e tem ${pessoa.idadeanos.
</html>

O teste

Para testar, inicie seu servlet conteiner e abra o seu browser em: http://localhost:8080/aplicacao-vraptor/index.jsp.

Caso sua aplicação não funcione, tente tirar suas dúvidas no nosso fórum.