2012-01-13 66 views
1

我無法調用manager.find(entity)方法,該方法包含一個類型爲byte []且長度大於tinyblob的實體。 如果我定義我的實體變量是這樣的:org.hibernate.mappingexception:否JDBC方言的映射方式:-4

private byte[] data; 

或像這樣:

@Column(length=200) 
private byte[] data; 

我不」有什麼問題,但冬眠設置列TINYBLOB的類型,太小了我目的。

所以,如果我試着加大尺寸以這樣的方式

@Column(length=200) 
private byte[] data; 
這樣

甚至:

@Lob 
private byte[] data; 

我得到這個例外org.hibernate.mappingexception: No Dialect mapping for JDBC type: -4。我試圖在persistence.xml中設置各種方言,但我總是遇到同樣的問題:( 在運行時拋出異常,當我調用manager.find方法時,當我啓動服務器時,該列是BLOB/MEDIUMBLOB/LONGBLOB,因爲它是應該是

謝謝!

回答

1

發現錯誤,異常被方法manager.find前createNativeQuery的調用過程中引發的。我不得不添加addScalar(「數據」,Hibernate.BLOB)

相關問題