Chaffelson opened a new pull request, #10936:
URL: https://github.com/apache/nifi/pull/10936

   ### Summary
   
   When an `SSLContextService` is configured on a 
`JMSConnectionFactoryProvider` using ActiveMQ Artemis, the trust store and key 
store settings are silently ignored. This causes `AMQ219007` connection 
failures against SSL-enabled Artemis brokers.
   
   Unlike Classic ActiveMQ which exposes bean-style setters (`setTrustStore`, 
etc.), Artemis parses SSL configuration from query-string parameters on the 
broker URL (`sslEnabled`, `trustStorePath`, `trustStorePassword`, etc.).
   
   Because the Artemis package prefix (`org.apache.activemq.artemis`) matches 
the existing Classic ActiveMQ check (`org.apache.activemq`), the handler falls 
into the wrong branch and the reflection-based setters silently fail.
   
   This change adds Artemis-specific handling in `JMSConnectionFactoryHandler` 
that augments the broker URL with SSL transport parameters from the 
`SSLContextService`. The Artemis check is ordered before the Classic ActiveMQ 
check to ensure correct prefix matching.
   
   ### Changes
   
   - `JMSConnectionFactoryHandler.java`: Added `configureArtemisSSL()` method 
and Artemis-specific branch in SSL configuration section
   - `JMSConnectionFactoryProviderTest.java`: Added unit tests for Artemis SSL 
URL construction
   
   ### Testing
   
   - Unit tests for Artemis SSL URL construction (new URL, existing 
`sslEnabled` param, trust-only and trust+key store scenarios)
   - Validated end-to-end against ActiveMQ Artemis 2.43.0 with SSL-only 
acceptor, confirming successful JMS message consumption over SSL using the 
supplied trust store
   
   ### Related Issues
   
   - See also NIFI-13522 (related but distinct: `ClassCastException` from using 
wrong factory class)


-- 
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