views:

59

answers:

1

Hi guys,

I have a oracle table which contains char(n) type for several columns. I use hibernate tools to create entities objets and this tool map char type in String.

But when I deploy my application, I get an error because Hibernate wait a varchar2 type and not a char type:

Wrong column type in ARBOR.CMF for column CHG_WHO. Found: char, expected: varchar2(30 char)

What kind of java type must I use to map char(n) type in an entity ?

Thanks.

+1  A: 

There's some useful information here on this blog entry.

Essentially you need to make your hibernate configuration more specific, as it's assuming a default String mapping to varchar2(30).

You can try using the database-agnostic annotation of @Column(length=N) (where N is the actual length of your column in the database). If that doesn't work, try using the @Column(columnDefinition = “char”) approach.

stark
Thanks a lot, I hadn't seen this property :)
Kiva