TL;DR
- Setzen Sie
spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true
in Ihrerapplication.yml
oder, - Setzen Sie
hibernate.jdbc.lob.non_contextual_creation=true
in Ihrerpersistence.xml
Dies ist ein bekannter Fehler in der JBoss-Community.
Dieser Fehler tritt auch in früheren Versionen und neuen Versionen mit Spring-Boot 2.0.0.RC1 und höher auf.
Lösung :
- Aktualisieren Sie Ihren postgressql-Treiber mit einer neueren abwärtskompatiblen Version.
- Setzen Sie
spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true
in Ihrerapplication.yml
oder, - Setzen Sie
hibernate.jdbc.lob.non_contextual_creation=true
in Ihrer persistence.xml
- Setzen Sie
- Wenn es nicht funktioniert, sehen Sie sich diesen Trick unten an:
Die Lösung besteht darin, diese Zeile in Ihre Eigenschaftsdatei einzufügen (oder etwas Ähnliches, wenn Sie Spring nicht verwenden)
spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults= false
Ihre application.yml sollte also folgendermaßen aussehen:
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
Referenz:
https://o7planning.org/en/11661 /spring-boot-jpa-and-spring-transaction-tutorial
Ruhezustand mit c3p0:createClob() ist es nicht noch implementiert
Danke an Binakot für seinen Kommentar unten. Ich habe den Beitrag aktualisiert.