Skip to content

Commit 7d1eb9a

Browse files
authored
Merge pull request quarkusio#36403 from gsmet/db2-resource
IBM Db2 - Register resource bundle classes for reflection
2 parents 3fd6eeb + 78d5bc3 commit 7d1eb9a

File tree

1 file changed

+22
-1
lines changed

1 file changed

+22
-1
lines changed

extensions/jdbc/jdbc-db2/deployment/src/main/java/io/quarkus/jdbc/db2/deployment/JDBCDB2Processor.java

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
package io.quarkus.jdbc.db2.deployment;
22

3+
import com.ibm.db2.jcc.resources.ResourceKeys;
4+
import com.ibm.db2.jcc.resources.Resources;
5+
import com.ibm.db2.jcc.resources.SqljResources;
6+
import com.ibm.db2.jcc.resources.T2uResourceKeys;
7+
import com.ibm.db2.jcc.resources.T2uResources;
8+
import com.ibm.db2.jcc.resources.T2zResourceKeys;
9+
import com.ibm.db2.jcc.resources.T2zResources;
10+
import com.ibm.db2.jcc.resources.T4ResourceKeys;
11+
import com.ibm.db2.jcc.resources.T4Resources;
12+
313
import io.quarkus.agroal.spi.JdbcDriverBuildItem;
414
import io.quarkus.arc.deployment.AdditionalBeanBuildItem;
515
import io.quarkus.arc.processor.BuiltinScope;
@@ -55,12 +65,23 @@ void configureAgroalConnection(BuildProducer<AdditionalBeanBuildItem> additional
5565
}
5666

5767
@BuildStep
58-
void registerDriverForReflection(BuildProducer<ReflectiveClassBuildItem> reflectiveClass) {
68+
void registerForReflection(BuildProducer<ReflectiveClassBuildItem> reflectiveClass) {
5969
//Not strictly necessary when using Agroal, as it also registers
6070
//any JDBC driver being configured explicitly through its configuration.
6171
//We register it for the sake of people not using Agroal,
6272
//for example when the driver is used with OpenTelemetry JDBC instrumentation.
6373
reflectiveClass.produce(ReflectiveClassBuildItem.builder(DB2_DRIVER_CLASS).build());
74+
75+
// register resource bundles for reflection (they are apparently classes...)
76+
reflectiveClass.produce(ReflectiveClassBuildItem.builder(Resources.class).build());
77+
reflectiveClass.produce(ReflectiveClassBuildItem.builder(ResourceKeys.class).build());
78+
reflectiveClass.produce(ReflectiveClassBuildItem.builder(SqljResources.class).build());
79+
reflectiveClass.produce(ReflectiveClassBuildItem.builder(T2uResourceKeys.class).build());
80+
reflectiveClass.produce(ReflectiveClassBuildItem.builder(T2uResources.class).build());
81+
reflectiveClass.produce(ReflectiveClassBuildItem.builder(T2zResourceKeys.class).build());
82+
reflectiveClass.produce(ReflectiveClassBuildItem.builder(T2zResources.class).build());
83+
reflectiveClass.produce(ReflectiveClassBuildItem.builder(T4ResourceKeys.class).build());
84+
reflectiveClass.produce(ReflectiveClassBuildItem.builder(T4Resources.class).build());
6485
}
6586

6687
@BuildStep

0 commit comments

Comments
 (0)