2.6 Setup for Apache Artemis - jmstoolbox/jmstoolbox GitHub Wiki
https://activemq.apache.org/artemis/
They are two plugins available for Apache Artemis:
- Apache Artemis for servers at level v1.x (Also used by Wildfly v10.x and JBoss EAP v7.x servers, see below)
- Apache Artemix v2.x for servers v2.x+
In broker.xml
, add:
<security-setting match="jms.queue.hornetq.management">
<permission type="manage" roles="<admin role>" />
</security-setting>
No extra jar is needed as JMSToolBox is bundled with the latest ActiveMQ Artemis jars
Name | Description |
---|---|
Host |
Apache ActiveMQ Artemis netty acceptor host name (eg localhost) |
Port |
Apache ActiveMQ Artemis netty listening port (eg. 61616) |
User/Password |
User allowed to connect to Apache ActiveMQ Artemis, ie associated to the role defined previously |
Name | Description |
---|---|
httpEnabled |
Use an HTTP netty acceptor to connect to the server |
httpUpgradeEnabled |
Multiplexing messaging traffic over HTTP |
sslEnabled |
Use an SSL netty acceptor to connect to the server |
trustStorePath |
Trust store (eg D:/somewhere/trust.jks ) |
trustStorePassword |
Trust store password |
z_ExtraNettyProperties |
Semicolon separated list of netty connector properties. eg "trustAll=true;tcpNoDelay=true;tcpSendBufferSize=16000"
|
minLargeMessageSize |
Connection factory parameter. Artemis will consider larger messages as 'large messages'. Defaults to 100K (Artemis v2.x) |
compressLargeMessage |
Connection factory parameter. Compress large messages? Defaults to false (Artemis v2.x) |
For the list of netty properties, visit https://activemq.apache.org/artemis/docs/latest/configuring-transports.html
Wildfly v10.x and JBoss EAP v7.x now embed Apache Artemis: v 1.x as their messaging engine
More information in the official JBoss EAP documentation
To connect JMSToolBox with the out-of-the-box JBoss EAP messaging engine configuration:
- in JMSToolBox, define a session with the Apache Artemis Queue Manager
- do not set httpEnabled (or set it to false)
- do set httpUpgradedEnabled to true
- unless set differently, the default port is 8080
- the user that will connect to the messaging engine must have the
"manage"
permission.
One easy way of doing this is to add the manage='true'
stanza to the existing one in standalone-full.xml
file and add the user to the corresponding role:
<subsystem xmlns="urn:jboss:domain:messaging-activemq:1.0">
<server name="default">
[...]
<security-setting name="#">
<role name="guest"
manage="true"
send="true"
consume="true"
create-non-durable-queue="true"
delete-non-durable-queue="true"/>
Be aware that with this simplistic settings, all users with the "guest"
role will have the "manage"
permission on the messaging engine.