PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Die Postgres-Fehlermethode org.postgresql.jdbc.PgConnection.createClob() ist nicht implementiert

TL;DR

  • Setzen Sie spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true in Ihrer application.yml oder,
  • Setzen Sie hibernate.jdbc.lob.non_contextual_creation=true in Ihrer persistence.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 :

  1. Aktualisieren Sie Ihren postgressql-Treiber mit einer neueren abwärtskompatiblen Version.
    • Setzen Sie spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true in Ihrer application.yml oder,
    • Setzen Sie hibernate.jdbc.lob.non_contextual_creation=true in Ihrer persistence.xml
  2. 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.