[
https://issues.apache.org/jira/browse/ARTEMIS-2412?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16881152#comment-16881152
]
Maarten Boekhold commented on ARTEMIS-2412:
-------------------------------------------
I've created a PR for this:
[https://github.com/apache/activemq-artemis/pull/2746]
would be interested in feedback
Maarten
> Full connection configuration through JNDI
> ------------------------------------------
>
> Key: ARTEMIS-2412
> URL: https://issues.apache.org/jira/browse/ARTEMIS-2412
> Project: ActiveMQ Artemis
> Issue Type: New Feature
> Affects Versions: 2.9.0
> Reporter: Maarten Boekhold
> Priority: Minor
> Time Spent: 10m
> Remaining Estimate: 0h
>
> With the native Artemis JMS classes, eg
> {{org.apache.activemq.artemis.jndi.JNDIReferenceFactory}}, it is not possible
> to configure the SSL parameters through JNDI properties. It's only possible
> by "stuffing" everything inside the {{brokerURL}}, which isn't nice.
> To put into context, with the "plain ol' ActiveMQ" {{JNDIReferenceFactory}},
> you can do (borrowing from the Tomcat syntax to define a JNDI resource):
> {code:java}
> <Resource name="jms/CONNECTION-FACTORY" auth="Container"
> type="org.apache.activemq.ActiveMQSslConnectionFactory"
> description="JMS Connection Factory"
> factory="org.apache.activemq.jndi.JNDIReferenceFactory"
> brokerURL="ssl://localhost:14617"
> trustStore="/pathto/client.ts"
> keyStore="/path/to/client.ks"
> trustStorePassword="trustPass"
> keyStorePassword="keyPass"/>{code}
> The equivalent is not possible with the Artemis native JMS API. Instead you
> need to encode things inside the {{brokerURL}} (which btw is poorly
> documented on which options are available).
> The request is to enhance
> {{org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory}} with
> additional "setter" methods that allow you to specify parameters such as
> "ssl-enable", "trustStore", "keyStore", "trustStorePassword",
> "keyStorePassword". The "buildFromProperties()" method should then take care
> of passing the values in the JNDI binding to the
> {{ActiveMQConnectionFactory}}, which will then use it to correctly initialize
> the connection.
> Eg. the expectation is to be able to do the following to configure an Artemis
> "native" ActiveMQConnectionFactory for SSL:
> {code:java}
> <Resource name="jms/CONNECTION-FACTORY" auth="Container"
>
> type="org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory"
> description="JMS Connection Factory"
> factory="org.apache.activemq.artemis.jndi.JNDIReferenceFactory"
> brokerURL="tcp://localhost:14617"
> ssl-enable="true"
> trustStore="/pathto/client.ts"
> keyStore="/path/to/client.ks"
> trustStorePassword="trustPass"
> keyStorePassword="keyPass"/>
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)