BenNeden MySQL blob türüne JPA/hazırda bekletme eşlemesi gösterilemiyor?
Caused by: org.hibernate.HibernateException: Wrong column type in TestTable for column PAYLOAD. Found: blob, expected: tinyblob
at org.hibernate.mapping.Table.validateColumns(Table.java:284)
at org.hibernate.cfg.Configuration.validateSchema(Configuration.java:1174)
at org.hibernate.tool.hbm2ddl.SchemaValidator.validate(SchemaValidator.java:139)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:387)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1385)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:954)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:883)
... 60 more
kolon hazırda
private byte[] messagePayload;
@Column(name="PAYLOAD")
public byte[] getMessagePayload() {
return messagePayload;
}
public void setMessagePayload(byte[] messagePayload) {
this.messagePayload = messagePayload;
}
MySQL tabloda tablo BLOB türü olarak bildirilmiş olarak ilan edilir şikayet aşağıdaki hata var. Neden Hazırda Bekletme, haritayı bulmak istemiyor ve neden TINYBLOB'u kullandığım konusunda ısrar ediyor?
Teşekkür
'columnDefinition' taşınabilir değildir, sonradan standarttır. JPA'da değilken "type" hazırda bekletme kullanılabilir. –
EclipseLink ve MySQL ile ikinciyi yaptım ve beklendiği gibi çalıştığını doğrulayabilirim. –
OP, JPA/Hibernate etiketlerinden bahsetmişken, çalışmasından ziyade cevaba daha fazla bilgi için yorum ekledim. –