J'utilise Hibernate 3.6 sur deux boîtes différentes, les deux lisant exactement la même table de base de données. L'annotation Hibernate pour deux champs est en tant que tel:Hibernate pas de chargement Postgresql bytea uniformément
@Basic(fetch=FetchType.EAGER)
@Column(name="encryptedkey",length = 256)
protected byte[] encryptedKey;
@Basic(fetch=FetchType.EAGER)
@Column(name="encryptediv",length = 256)
protected byte[] encryptedIV;
Maintenant, lors du chargement de l'entité avec ces propriétés sur une machine (Ubuntu Linux avec Sun JDK 1.6.0_22-b04), je suis en mesure de charger le 256- octet chiffré clés et IVs.
Cependant, ce n'est pas le cas sur une autre machine (Windows 2003 serveur SP2 Enterprise Edition avec Sun JVM 1.6.0_22-b04), j'ai 0 ou 511 octets chargés pour chaque champ. Sinon, les fichiers Jar sur les deux systèmes sont identiques.
Le moteur de base de données est PostgreSQL 9.0 et j'utilise le dernier pilote JDBC de PostgreSQL.
Quelqu'un a une idée de ce qui pourrait mal se passer?
le type de colonne postgre est array? – Bozho
Le type dans postgre est 'bytea' – malaverdiere
Quelques étapes de dépannage ont été essayées: mise à niveau de la JVM, mise à jour des librairies Hibernate 1.6, mise à niveau vers Hibernate 3.3.2, passage d'infinispan à ehcache. J'ai également essayé avec les pilotes JDBC3 et JDBC4 avec les mêmes résultats. Aucune de ces choses n'a changé quoi que ce soit. – malaverdiere