VRaptor

Plugins do VRaptor

Plugins são complementos ao VRaptor. Eles são úteis para situações como acessar um banco de dados usando JPA ou Hibernate, enviar emails, segurança etc.

VRaptor JPA

O plugin VRaptor JPA cuida da criação e injeção de depedência da EntityManager e EntityManagerFactory. Além disso, o plugin aplica o padrão Open EntityManager In View, isto é, ele abre uma transação com o banco de dados no ínicio da requisição e executa o commit da transação no fim da requisição.

Para usá-lo basta você copiar o jar para a sua aplicação, ou declarar o plugin como dependência do Maven conforme o trecho abaixo.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-jpa</artifactId>
    <version>4.0.5</version>
</dependency>

É importante que a persistence unit chame-se default, e que o persistence.xml esteja no diretório src/main/resources/META-INF/.

O plugin não possui nenhum provider. Com isso é necessário que você declare algum provider, como por exemplo, o Hibernate.

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
    <version>4.3.0.Final</version> <!-- Ou outra versão compatível com JPA 2.1 -->
</dependency>

Ou se você prefere usar o Eclipselink:

<dependency>
    <groupId>org.eclipse.persistence</groupId>
    <artifactId>org.eclipse.persistence.jpa</artifactId>
    <version>2.5.1</version>
</dependency>

Plugin no Github.

VRaptor Hibernate

Se você usa o Hibernate 4, você pode usar o plugin vraptor-hibernate. Semelhante ao plugin VRaptor JPA, este plugin cuida da criação e injetação de dependência da Session e SessionFactory do Hibernate. Além de aplicar o padrão Open Session In View.

Você pode adicioná-lo em seu projeto Maven conforme o trecho abaixo, ou copiar manualmente o jar para seu projeto.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-hibernate</artifactId>
    <version>4.0.4</version>
</dependency>

Plugin no Github.

VRaptor Java 8

Plugin de suporte para Java 8. Oferece converters para as classes do Java Time (JSR-310), reflection para o nome dos parâmetros e mais.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-java8</artifactId>
    <version>4.0.0.Final</version>
</dependency>

Plugin no Github.

Simple mail

Permite envio de e-mails.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-simplemail</artifactId>
    <version>4.1.0-RC4</version>
</dependency>

Plugin no Github.

Joda-time

Joda-time é uma API para facilitar o trabalho de dados temporais em Java. Para usar o joda-time basta acionar o plugin vraptor-jodatime. Adicionando o plugin, os converters são registrados automaticamente.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-jodatime</artifactId>
    <version>4.1.0-RC3</version>
</dependency>

Plugin no Github.

VRaptor Error-Control

Controle dos erros de sua aplicação em tempo real com o envio de e-mail.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-error-control</artifactId>
    <version>4.0.2</version>
</dependency>

Plugin no Github.

VRaptor Brutauth

Forma fácil de verificar as permissões de acesso das ações de seu controller.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-brutauth</artifactId>
    <version>4.0.4</version>
</dependency>

Plugin no Github.

VRaptor QuartzJob

Agendamento de tarefas com Quartz.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-quartzjob</artifactId>
    <version>4.0.7</version>
</dependency>

Plugin no Github.

VRaptor Freemarker

Renderiza templates do Freemarker.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-freemarker</artifactId>
    <version>4.1.0-RC3</version>
</dependency>

Plugin no Github.

VRaptor Dash

Dashboard com varias ferramentas para seus projetos VRaptor.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-dash</artifactId>
    <version>4.1.0-RC3</version>
</dependency>

Plugin no Github.

VRaptor Authz

Alternativa para controle de acesso (autorização) de seus métodos do controller.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-authz</artifactId>
    <version>4.0.0-RC2</version>
</dependency>

Plugin no Github.

VRaptor I18n

Soluções de i18n na view

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-i18n</artifactId>
    <version>4.2.0-RC4</version>
</dependency>

Plugin no Github.

VRaptor Test

Facilmente possibilita a criação de testes de integração ou sistema.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-test</artifactId>
    <version>4.0.0</version>
</dependency>

Plugin no Github.

VRaptor Paginator

Paginação eficiente de seus dados do JPA/Hibernate.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-paginator</artifactId>
    <version>4.0.0</version>
</dependency>

Plugin no Github.

VRaptor Panettone

Um template engine typesafe escrito em Java.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-panettone</artifactId>
    <version>4.0.0-RC9</version>
</dependency>

Plugin no Github.

VRaptor Biscotti

I18n typesafe. Sem mais chaves esquecidas e exceptions pra você e seu cliente.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-biscotti</artifactId>
    <version>4.0.0-RC1</version>
</dependency>

Plugin no Github.

VRaptor Routes

Extraia e defina rotas customizadas em um arquivo de properties.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-routes</artifactId>
    <version>4.1.0-RC3</version>
</dependency>

Plugin no Github.

VRaptor Simple Validator

Uma forma simples e efetiva de fazer validações programáticas.

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
    <artifactId>vraptor-simple-validator</artifactId>
    <version>4.1.0-RC3</version>
</dependency>

Plugin no Github.

VRaptor contrib

Você pode encontrar alguns plugins feitos por usuários do VRaptor no vraptor-contrib.