Vodo-Siosk Baas Vodo-Siosk Baas - 1 year ago 512
SQL Question

Hibernate 4.1.2.FINAL Disabling contextual LOB creation as createClob() method threw error , Blob field

I want to create a BLOB field with hibernate/postgresql 9.1.1

Why do I see this message in the logs:

INFO [org.hibernate.engine.jdbc.internal.LobCreatorBuilder] (MSC service thread 1-5)
HHH000424: Disabling contextual LOB creation as createClob() method threw error :

I know this is not an error.

Hibernate 4.1 documentation:

"@Lob indicates that the property should be persisted in a Blob or a Clob depending
on the property type: java.sql.Clob, Character[], char[] and java.lang.String will be
persisted in a Clob. java.sql.Blob, Byte[], byte[] and Serializable type will be persisted in a Blob."

I declare my field like this:

@Type(type = "org.hibernate.type.MaterializedClobType")
@Column(name = "`ACTA_CERTIFICACION`")
public byte[] getActacertificacion() {
return actacertificacion;
* @param actacertificacion
* @uml.property name="actacertificacion"
public void setActacertificacion(byte[] actacertificacion) {
this.actacertificacion = actacertificacion;

But in the database its create like a text field:


What can I do?, I want to create a byte field or something similar.

Answer Source

Since the you are using text in database, you should be using CLOB type in the POJO class. If you want to map this, just add a property in your POJO as below,

private Clob tect;

Now, as per your requirement you can convert this Clob to a byte[] as told here.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download