turing85 opened a new issue, #5666:
URL: https://github.com/apache/camel-quarkus/issues/5666

   ### Bug description
   
   When we use `JdbcTemplate.queryForRowSet(...)`, the application will fail in 
native mode with the following stack trace:
   ```
   2024-01-23 22:18:22,146 ERROR [io.qua.ver.htt.run.QuarkusErrorHandler] 
(executor-thread-1) HTTP Request to /foo failed, error id: 
06c0ccc2-ed4f-4822-b478-e00e33ba3a61-1: java.util.MissingResourceException: 
Can't find bundle for base name com.sun.rowset.RowSetResourceBundle, locale 
en_US
        at 
java.base@21/java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:2059)
        at 
java.base@21/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1697)
        at 
java.base@21/java.util.ResourceBundle.getBundleFromModule(ResourceBundle.java:1617)
        at 
java.base@21/java.util.ResourceBundle.getBundle(ResourceBundle.java:1017)
        at 
java.sql.rowset@21/com.sun.rowset.JdbcRowSetResourceBundle.<init>(JdbcRowSetResourceBundle.java:105)
        at 
java.sql.rowset@21/com.sun.rowset.JdbcRowSetResourceBundle.getJdbcRowSetResourceBundle(JdbcRowSetResourceBundle.java:124)
        at 
java.sql.rowset@21/com.sun.rowset.CachedRowSetImpl.<init>(CachedRowSetImpl.java:364)
        at 
java.sql.rowset@21/com.sun.rowset.RowSetFactoryImpl.createCachedRowSet(RowSetFactoryImpl.java:49)
        at 
org.springframework.jdbc.core.SqlRowSetResultSetExtractor.newCachedRowSet(SqlRowSetResultSetExtractor.java:90)
        at 
org.springframework.jdbc.core.SqlRowSetResultSetExtractor.createSqlRowSet(SqlRowSetResultSetExtractor.java:74)
        at 
org.springframework.jdbc.core.SqlRowSetResultSetExtractor.extractData(SqlRowSetResultSetExtractor.java:58)
        at 
org.springframework.jdbc.core.SqlRowSetResultSetExtractor.extractData(SqlRowSetResultSetExtractor.java:42)
        at 
org.springframework.jdbc.core.JdbcTemplate$1QueryStatementCallback.doInStatement(JdbcTemplate.java:454)
        at 
org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:383)
        at 
org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:466)
        at 
org.springframework.jdbc.core.JdbcTemplate.queryForRowSet(JdbcTemplate.java:531)
        at de.turing85.quarkus.jdbc.template.Resource.get(Resource.java:28)
        at 
de.turing85.quarkus.jdbc.template.Resource$quarkusrestinvoker$get_bd3a803a64f67f513762962949efcedfd340aa43.invoke(Unknown
 Source)
        at 
org.jboss.resteasy.reactive.server.handlers.InvocationHandler.handle(InvocationHandler.java:29)
        at 
io.quarkus.resteasy.reactive.server.runtime.QuarkusResteasyReactiveRequestContext.invokeHandler(QuarkusResteasyReactiveRequestContext.java:141)
        at 
org.jboss.resteasy.reactive.common.core.AbstractResteasyReactiveContext.run(AbstractResteasyReactiveContext.java:147)
        at 
io.quarkus.vertx.core.runtime.VertxCoreRecorder$14.runWith(VertxCoreRecorder.java:582)
        at 
org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)
        at 
org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)
        at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:29)
        at 
org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:29)
        at 
io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
        at java.base@21/java.lang.Thread.runWith(Thread.java:1596)
        at java.base@21/java.lang.Thread.run(Thread.java:1583)
        at 
org.graalvm.nativeimage.builder/com.oracle.svm.core.thread.PlatformThreads.threadStartRoutine(PlatformThreads.java:833)
        at 
org.graalvm.nativeimage.builder/com.oracle.svm.core.posix.thread.PosixPlatformThreads.pthreadStartRoutine(PosixPlatformThreads.java:211)
   ```
   
   ---
   Reproducer: 
   - clone https://github.com/turing85/quarkus-jdbc-template: 
     ```bash
     git clone https://github.com/turing85/quarkus-jdbc-template.git && cd 
quarkus-jdbc-template
     ```
   - build & run in JVM mode: 
     ```bash
     ./mvnw clean verify
     ```
   - observe that the integration test passes
   - build & run in native mode: 
     ```bash
     ./mvnw -Dnative clean verify
     ```
   - observe that the integration test fails, and that the above stack trace 
can be found in the application logs
   
   ---
   Affected quarkus versions: at least `3.2.8.Final` to `3.6.7`.
   
   ---
   Comment: I opened the issue here since the dependency that provides 
`JdbcTemplate` (`spring-jdbc`) is a transitive dependency of, e.g., 
`camel-quarkus-sql`. As far as I know, the quarkus core does not import 
`spring-jdbc` anywhere.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@camel.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to