TL;DR
- Définir
spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true
dans votreapplication.yml
ou, - Définir
hibernate.jdbc.lob.non_contextual_creation=true
dans votrepersistence.xml
C'est une erreur connue dans la communauté JBoss.
Cette erreur apparaît dans les anciennes versions et la nouvelle version avec Spring-Boot 2.0.0.RC1 ainsi que dans les versions ultérieures.
Solution :
- Mettez à jour votre pilote postgressql avec une nouvelle version rétrocompatible.
- Définir
spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true
dans votreapplication.yml
ou, - Définir
hibernate.jdbc.lob.non_contextual_creation=true
dans votre persistence.xml
- Définir
- Si cela ne fonctionne pas, voyez cette astuce ci-dessous :
La solution consiste à ajouter cette ligne dans votre fichier de propriétés (ou quelque chose de similaire si vous n'utilisez pas de ressort)
spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults= false
Ainsi, votre application.yml devrait ressembler à :
spring:
application:
name: employee-service
datasource:
url: jdbc:postgresql://localhost:5432/db_development
platform: POSTGRESQL
username: ...
password: ...
jpa:
hibernate:
ddl-auto: create-drop
dialect: org.hibernate.dialect.PostgreSQL9Dialect
show_sql: true
properties.hibernate.temp.use_jdbc_metadata_defaults: false
server:
port: 8080
Référence :
https://o7planning.org/en/11661 /tutoriel-spring-boot-jpa-and-spring-transaction
hiberner avec c3p0 :createClob() n'est pas encore mis en œuvre
Merci à Binakot pour son commentaire ci-dessous. J'ai mis à jour le message.