The camel-spring-boot-bom still references upstream Artemis client libraries:
... <groupId>com.redhat.camel.springboot.platform</groupId> <artifactId>camel-spring-boot-bom</artifactId> <version>4.0.0.redhat-00036</version> <packaging>pom</packaging> .... <!-- Artemis Overrides --> <dependency> <groupId>org.apache.activemq</groupId> <artifactId>artemis-commons</artifactId> <version>2.28.0</version> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.activemq</groupId> <artifactId>artemis-core-client</artifactId> <version>2.28.0</version> <exclusions> <exclusion> <groupId>org.apache.geronimo.specs</groupId> <artifactId>geronimo-json_1.0_spec</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.activemq</groupId> <artifactId>artemis-jdbc-store</artifactId> <version>2.28.0</version> </dependency> <dependency> <groupId>org.apache.activemq</groupId> <artifactId>artemis-jms-client</artifactId> <version>2.28.0</version> ...
Mixed use of these upstream artemis client libraries and Red Hat built/packaged libraries causes error. For instance, a project pom.xml like following:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.redhat.camel.springboot.platform</groupId>
<artifactId>camel-spring-boot-bom</artifactId>
<version>4.0.0.redhat-00028</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
...
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>artemis-jakarta-client</artifactId>
<version>2.28.0.redhat-00012</version>
</dependency>
...
will cause an error to be thrown:
***************************
APPLICATION FAILED TO START
***************************
Description:
An attempt was made to call a method that does not exist. The attempt was made from the following location:
org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.getPasswordCodec(ActiveMQConnectionFactory.java:832)
The following method did not exist:
'java.lang.String org.apache.activemq.artemis.api.core.client.ServerLocator.getPasswordCodec()'
The camel-spring-boot-bom version 4.0 should point to Red Hat packaged libraries version instead.