This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 25e8d186e5df CAMEL-24131: camel-jpa - Guard consumeDelete handler 
against Object[] from native queries (#24793)
25e8d186e5df is described below

commit 25e8d186e5dfeac99cab14187944a1d7fb455ec4
Author: Claus Ibsen <[email protected]>
AuthorDate: Thu Jul 16 15:41:12 2026 +0200

    CAMEL-24131: camel-jpa - Guard consumeDelete handler against Object[] from 
native queries (#24793)
    
    Co-Authored-By: Claude Opus 4.6 <[email protected]>
---
 .../main/java/org/apache/camel/component/jpa/JpaConsumer.java  | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git 
a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
 
b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
index 626f03ba823e..e55c4bfc5f66 100644
--- 
a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
+++ 
b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
@@ -471,7 +471,15 @@ public class JpaConsumer extends 
ScheduledBatchPollingConsumer {
             }
         }
         if (getEndpoint().isConsumeDelete()) {
-            return (EntityManager em, Object entityBean, Exchange exchange) -> 
em.remove(entityBean);
+            return (EntityManager em, Object entityBean, Exchange exchange) -> 
{
+                if (entityBean != null && !entityBean.getClass().isArray()) {
+                    em.remove(entityBean);
+                } else {
+                    LOG.warn("Cannot auto-delete entity of type {} (e.g. 
native query result without resultClass)."
+                             + " Set consumeDelete=false or configure a 
resultClass.",
+                            entityBean != null ? 
entityBean.getClass().getName() : "null");
+                }
+            };
         }
 
         return (EntityManager em, Object entityBean, Exchange exchange) -> {

Reply via email to