davsclaus opened a new pull request, #24733:
URL: https://github.com/apache/camel/pull/24733

   ## Summary
   
   _Claude Code on behalf of davsclaus_
   
   - Fix `transferException=true` silently swallowing processing failures (and 
committing the transaction) when the incoming JMS message has no `JMSReplyTo` 
header
   - The `transferException` feature was designed for request-reply (InOut) 
only — it suppresses the exception to transfer it as a reply body. When no 
reply destination exists, the exception must flow through normally so the 
transaction rolls back and the message is redelivered
   - Applied the same fix to both `camel-jms` and `camel-sjms`
   
   ## What changed
   
   **camel-jms** `EndpointMessageListener.evaluateExchangeResult()`: changed 
condition from `!endpoint.isTransferException()` to 
`!(endpoint.isTransferException() && sendReply)` — only suppress the exception 
when a reply will actually be sent.
   
   **camel-sjms** `EndpointMessageListener.done()`: added `&& sendReply` to the 
`endpoint.isTransferException()` guard — same logical fix in the 
pre-refactoring code style.
   
   ## Test plan
   
   - [x] New `JmsTransferExceptionNoReplyToIT` — sends a fire-and-forget 
message (InOnly, no JMSReplyTo) to a transacted queue with 
`transferException=true`; verifies the processor is invoked more than once 
(redelivery) and the message reaches the dead letter channel
   - [x] Existing `JmsTransferExceptionIT` — verifies InOut request-reply with 
`transferException=true` still works (exception transferred as reply body)
   - [x] Full camel-jms test suite (81 tests pass)
   - [x] camel-sjms compiles successfully
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   
   Co-Authored-By: Claude Opus 4.6 <[email protected]>


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to