gofabian / spring-boot-data-r2dbc-jooq

Reactive JOOQ - an R2DBC adapter for Spring Boot
MIT License
39 stars 11 forks source link

PostrgreSQL JSONB Support #22

Closed robbydf closed 3 years ago

robbydf commented 4 years ago

I've been trying to convert my jooq based application from jdbc to r2dbc using this library. However I encountered an issue regarding r2dbc-postgresql. Here is the response of Netty to one of my select queries to the database containing one JSONB data type in PostgreSQL.

{ "timestamp": "time_stamp_here", "path": "request_path_here", "status": 500, "error": "Internal Server Error", "message": "Cannot convert from JsonOutput{{database_json_content_ere}} (class io.r2dbc.postgresql.codec.Json$JsonOutput) to class org.jooq.JSONB", "requestId": "request_id_here" }

Any ideas on how to fix this?

robbydf commented 4 years ago

Added support via pull request #23

Comments and edits are welcome

gofabian commented 3 years ago

The problem is that the JSON-Types of r2dbc-postgresql (io.r2dbc.postgresql.codec.Json) and JOOQ (org.jooq.JSON, org.jooq.JSONB) are not compatible. Both are able to cope with Strings but they have their own JSON data classes used by default.

In our next release we will have a Converter class that is an adapter between R2DBC driver and JOOQ. We will provide JSON support with r2dbc-mysql and r2dbc-postgresql out-of-the-box.

gofabian commented 3 years ago

Closing in favor of https://github.com/gofabian/spring-boot-data-r2dbc-jooq/issues/26