Re: Enums - from java to jpa - Mailing list pgsql-jdbc

From Guy Rouillier
Subject Re: Enums - from java to jpa
Date
Msg-id 4A09D9D9.6000306@burntmail.com
Whole thread Raw
In response to Enums - from java to jpa  (The Jasper <thejasper@gmail.com>)
List pgsql-jdbc
The Jasper wrote:
> L.S.,
>
> We are updating out application to make use of JPA. We have also
> introduced postgres enums into our database. Naturally we also have
> java enums which mirror the postgres enums. Now...how do I get JPA to
> understand that it has different types at either end which are
> actually the same. I mostly get ClassCastExceptions where PGObject is
> being cast to String. I can't get rid of an enum definition at either
> end, I'm stuck with that. So I need to make JPA understand how to map
> from one to the other. We use Hibernate as our JPA implementation.
>

Our project is also using JPA via Hibernate, but with Oracle on the back
end.  Here is how we annotate our columns that access Java enums:

   @Column(name = "PREGION_ID", precision = 20, scale = 0, nullable = true)
   @Type(type = "com.masergy.sales360.persistence.GenericEnumUserType",
parameters = {
     @Parameter(name = "enumClass", value =
"com.masergy.sales360.client.model.OmsPricingRegionEnum"),
     @Parameter(name = "identifierMethod", value = "toInt"),
     @Parameter(name = "valueOfMethod", value = "fromInt") })

GenericEnumUserType implements UserType, ParameterizedType (Hibernate
interfaces.)

--
Guy Rouillier

pgsql-jdbc by date:

Previous
From: Thomas Finneid
Date:
Subject: Re: pooled prepared statements
Next
From: John Lister
Date:
Subject: Re: pooled prepared statements