Skip to content

feat: add JMS template for RabbitMQ#263

Open
kryskool wants to merge 2 commits intoOpenIntegrationEngine:mainfrom
kryskool:jms-rabbitmq-template
Open

feat: add JMS template for RabbitMQ#263
kryskool wants to merge 2 commits intoOpenIntegrationEngine:mainfrom
kryskool:jms-rabbitmq-template

Conversation

@kryskool
Copy link
Contributor

@kryskool kryskool commented Mar 10, 2026

Add template for JMS connection with RabbitMQ

SCR-20260313-inuz

@github-actions
Copy link

github-actions bot commented Mar 10, 2026

Test Results

  105 files  ±0    202 suites  ±0   7m 1s ⏱️ + 1m 14s
  633 tests ±0    633 ✅ ±0  0 💤 ±0  0 ❌ ±0 
1 266 runs  ±0  1 266 ✅ ±0  0 💤 ±0  0 ❌ ±0 

Results for commit 1804b8e. ± Comparison against base commit 7723b34.

♻️ This comment has been updated with latest results.

Signed-off-by: Christophe Chauvet <christophe.chauvet@gmail.com>
@kryskool kryskool force-pushed the jms-rabbitmq-template branch from 510fa5d to d99d604 Compare March 12, 2026 08:40
Signed-off-by: Christophe Chauvet <christophe.chauvet@gmail.com>
Copy link
Member

@tonygermano tonygermano left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left a couple suggestions for changes.

This connector could use some work in a separate PR. It was a pain to test. It only supports jms 1.1 by default. It supports jms 2 with an additional javax.jms-api library, but not jms 3 (jakarta.jms,) and the resource dir only worked when "Load parent-first" was selected.

Comment on lines +646 to +649
usernameField.setText(template.getUsername());
passwordField.setText(template.getPassword());
clientIdField.setText(template.getClientId());
destinationNameField.setText(template.getDestinationName());
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
usernameField.setText(template.getUsername());
passwordField.setText(template.getPassword());
clientIdField.setText(template.getClientId());
destinationNameField.setText(template.getDestinationName());

I don't think these fields were meant to be saved in a template. They are already clearly labeled in the GUI, are specific to a particular connection, and could contain sensitive data.

Comment on lines +59 to +64
properties.getConnectionProperties().put("brokerURL", "failover:(tcp://localhost:5672)?maxReconnectAttempts=0");
properties.getConnectionProperties().put("closeTimeout", "15000");
properties.getConnectionProperties().put("useCompression", "no");
properties.setUsername("guest");
properties.setPassword("guest");
properties.setDestinationName("myqueue");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
properties.getConnectionProperties().put("brokerURL", "failover:(tcp://localhost:5672)?maxReconnectAttempts=0");
properties.getConnectionProperties().put("closeTimeout", "15000");
properties.getConnectionProperties().put("useCompression", "no");
properties.setUsername("guest");
properties.setPassword("guest");
properties.setDestinationName("myqueue");
properties.getConnectionProperties().put("host", "localhost");
properties.getConnectionProperties().put("port", "5672");
properties.getConnectionProperties().put("virtualHost", "/");

Similar to my other comment, I don't think username, password, and destinationName are meant to be saved in the template.

I believe the connection properties are not valid RabbitMQ properties. They appear to be copied from the ActiveMQ template. host, port, and virtualHost are what appear in the documentation. I tested them with non-default values and they worked. You can see what the other valid properties are by scrolling down a bit in that section.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants