diff --git a/jOOQ/src/main/java/org/jooq/impl/JSONArray.java b/jOOQ/src/main/java/org/jooq/impl/JSONArray.java index 9d26264e84..c071afd8be 100644 --- a/jOOQ/src/main/java/org/jooq/impl/JSONArray.java +++ b/jOOQ/src/main/java/org/jooq/impl/JSONArray.java @@ -193,7 +193,7 @@ implements default: { JSONNull jsonNull; - JSONReturning jsonReturning = new JSONReturning(returning); + JSONReturning jsonReturning; // Workaround for https://github.com/h2database/h2database/issues/2496 if (ctx.family() == H2 && fields.isEmpty()) @@ -201,6 +201,14 @@ implements else jsonNull = new JSONNull(onNull); + + + + + + + jsonReturning = new JSONReturning(returning); + Field jsonArray = CustomField.of(N_JSON_ARRAY, getDataType(), c -> c.visit(N_JSON_ARRAY).sql('(').visit(QueryPartListView.wrap(mapped, jsonNull, jsonReturning).separator("")).sql(')') ); diff --git a/jOOQ/src/main/java/org/jooq/impl/JSONObject.java b/jOOQ/src/main/java/org/jooq/impl/JSONObject.java index 8b07ca58e3..42af0a30b5 100644 --- a/jOOQ/src/main/java/org/jooq/impl/JSONObject.java +++ b/jOOQ/src/main/java/org/jooq/impl/JSONObject.java @@ -221,7 +221,7 @@ implements private final void acceptStandard(Context ctx) { JSONNull jsonNull; - JSONReturning jsonReturning = new JSONReturning(returning); + JSONReturning jsonReturning; // Workaround for https://github.com/h2database/h2database/issues/2496 if (entries.isEmpty() && ctx.family() == H2) @@ -234,6 +234,14 @@ implements else jsonNull = new JSONNull(onNull); + + + + + + + jsonReturning = new JSONReturning(returning); + ctx.visit(N_JSON_OBJECT).sql('(').visit(QueryPartListView.wrap(QueryPartCollectionView.wrap(entries), jsonNull, jsonReturning).separator("")).sql(')'); }