2
respostas

VRaptor e JPA 2.2

Bom dia!

Gostaria de saber como posso fazer para usar a nova api do JPA 2.2 que da suporte para as datas do java 8. tenho uma aplicação com Vraptor 4, porém uso a dependência :

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

a qual já possui a dependencia da JPA 2.1.

Como eu posso fazer para usar esta a 2.2 ?

<dependency>
    <groupId>javax.persistence</groupId>
    <artifactId>javax.persistence-api</artifactId>
    <version>2.2</version>
</dependency>

pois apenas adicionar não vai surtir efeito, tendo em vista que o VRaptor -jpa ja trás a versão 2.1 agregada.

Alguém poderia me auxiliar por gentileza.

Grato

2 respostas

Oi Rafael,

Para atualizar para a versão 2.2 do JPA você pode excluir a versão que vem através da dependência do VRaptor e incluir a 2.2 no seu pom.xml:

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
     <artifactId>vraptor-jpa</artifactId>
      <version>4.0.5</version>
      <exclusions>
        <exclusion>
          <groupId>javax.persistence</groupId>
          <artifactId>javax.persistence-api</artifactId>
        </exclusion>
      </exclusions>
</dependency>

<dependency>
    <groupId>javax.persistence</groupId>
    <artifactId>javax.persistence-api</artifactId>
    <version>2.2</version>
</dependency>

Abraço!

Bom dia Otávio!

Fiz conforme vc falou, só mudei o groupId pois a versão 2.1 é diferente, consultei o POM que o VRaptor usa e coloquei assim

<dependency>
    <groupId>br.com.caelum.vraptor</groupId>
     <artifactId>vraptor-jpa</artifactId>
      <version>4.0.5</version>
      <exclusions>
        <exclusion>
        <groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.1-api</artifactId>
        </exclusion>
      </exclusions>
</dependency>
<dependency>
    <groupId>javax.persistence</groupId>
    <artifactId>javax.persistence-api</artifactId>
    <version>2.2</version>
   <scope>provided</scope>
</dependency>

Porém o 2.1 continua aparecendo nas libs do mavem. e eu estou atualizando justamente pois o 2.2 da suporte correto as datas, coisa que no JPA 2.1 o campo data é gerado com TINYBLOB.

Teria alguma sugestão a mais?