[ https://issues.apache.org/jira/browse/AMQ-9469?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kartik Ganesh updated AMQ-9469: ------------------------------- Description: Hello! I noticed that the ActiveMQ [assembly pom.xml|https://github.com/apache/activemq/blob/main/assembly/pom.xml#L484-L486] has a dependency on a very old library - "jrms-1.1" - and I'm wondering if I can submit a PR to remove this. This library has not seen any releases/updates since 2005 and [Maven|https://mvnrepository.com/artifact/jrms/jrms/usages] lists only ActiveMQ and Apache Camel as upstream usages. After digging through ActiveMQ's mailing lists and commit history, I found that it [used to be listed|https://github.com/apache/activemq-web/blob/7a7d976c/2004/06/23/jgroups-and-jrms-support.xml] on ActiveMQ's [URI Protocols|https://activemq.apache.org/components/classic/documentation/uri-protocols] page, but was removed at some point. JRMS seems to be listed as a peer-to-peer option on the [topologies|https://activemq.apache.org/components/classic/documentation/topologies] page but is not discussed in either the [peer|https://activemq.apache.org/components/classic/documentation/peer-transport-reference] or [multicast|https://activemq.apache.org/components/classic/documentation/multicast-transport-reference] transport reference pages. If I try to specify "jrms://" as a protocol for my ActiveMQConnectionFactory, I see the following stack-trace: {{javax.jms.JMSException: Could not create Transport. Reason: java.io.IOException: Transport scheme NOT recognized: [jrms]}}{{ at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)}}{{ at org.apache.activemq.ActiveMQConnectionFactory.createTransport(ActiveMQConnectionFactory.java:378)}}{{ at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:391)}}{{ at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:349)}}{{ at org.apache.activemq.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:245)}}{{ at App$HelloWorldProducer.run(App.java:66)}}{{ at java.base/java.lang.Thread.run(Thread.java:840)}} {{Caused by: java.io.IOException: Transport scheme NOT recognized: [jrms]}}{{ at org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:30)}}{{ at org.apache.activemq.transport.TransportFactory.findTransportFactory(TransportFactory.java:185)}}{{ at org.apache.activemq.transport.TransportFactory.connect(TransportFactory.java:64)}}{{ at org.apache.activemq.ActiveMQConnectionFactory.createTransport(ActiveMQConnectionFactory.java:376)}}{{ ... 5 more}} {{Caused by: java.io.IOException: Could not find factory class for resource: META-INF/services/org/apache/activemq/transport/jrms}}{{ at org.apache.activemq.util.FactoryFinder$StandaloneObjectFactory.loadProperties(FactoryFinder.java:104)}}{{ at org.apache.activemq.util.FactoryFinder$StandaloneObjectFactory.create(FactoryFinder.java:61)}}{{ at org.apache.activemq.util.FactoryFinder.newInstance(FactoryFinder.java:154)}}{{ at org.apache.activemq.transport.TransportFactory.findTransportFactory(TransportFactory.java:182)}}{{ ... 7 more}} An [email from 2011 on the users mailing-list|https://lists.apache.org/thread/wbwdj8011tmcqtdlbbfmzsthjdrh0gn0] came to the same conclusion, but I don't see any further discussion on it. I've confirmed that the [META-INF/services/org/apache/activemq/transport|https://github.com/apache/activemq/tree/main/activemq-client/src/main/resources/META-INF/services/org/apache/activemq/transport] folder under activemq-client does not have a "jrms" file. was: Hello! I noticed that the ActiveMQ [assembly pom.xml|https://github.com/apache/activemq/blob/main/assembly/pom.xml#L484-L486] has a dependency on a very old library - "jrms-1.1" - and I'm wondering if I can submit a PR to remove this. This library has not seen any releases/updates since 2005 and [Maven|https://mvnrepository.com/artifact/jrms/jrms/usages] lists only ActiveMQ and Apache Camel as upstream usages. After digging through ActiveMQ's mailing lists and commit history, I found that it [used to be listed|https://github.com/apache/activemq-web/blob/7a7d976c/2004/06/23/jgroups-and-jrms-support.xml] on ActiveMQ's [URI Protocols|https://activemq.apache.org/components/classic/documentation/uri-protocols] page, but was removed at some point. JRMS seems to be listed as a peer-to-peer option on the [topologies|https://activemq.apache.org/components/classic/documentation/topologies] page but is not discussed in either the [peer|https://activemq.apache.org/components/classic/documentation/peer-transport-reference] or [multicast|https://activemq.apache.org/components/classic/documentation/multicast-transport-reference] transport reference pages. If I try to specify "jrms://" as a protocol for my ActiveMQConnectionFactory, I see the following stack-trace: {{javax.jms.JMSException: Could not create Transport. Reason: java.io.IOException: Transport scheme NOT recognized: [jrms]}}{{ at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)}}{{ at org.apache.activemq.ActiveMQConnectionFactory.createTransport(ActiveMQConnectionFactory.java:378)}}{{ at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:391)}}{{ at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:349)}}{{ at org.apache.activemq.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:245)}}{{ at App$HelloWorldProducer.run(App.java:66)}}{{{} at java.base/java.lang.Thread.run(Thread.java:829){}}}{{{}Caused by: java.io.IOException: Transport scheme NOT recognized: [jrms]{}}}{{ at org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:30)}}{{ at org.apache.activemq.transport.TransportFactory.findTransportFactory(TransportFactory.java:185)}}{{ at org.apache.activemq.transport.TransportFactory.connect(TransportFactory.java:64)}}{{ at org.apache.activemq.ActiveMQConnectionFactory.createTransport(ActiveMQConnectionFactory.java:376)}}{{{} ... 5 more{}}}{{{}Caused by: java.io.IOException: Could not find factory class for resource: META-INF/services/org/apache/activemq/transport/jrms{}}}{{ at org.apache.activemq.util.FactoryFinder$StandaloneObjectFactory.loadProperties(FactoryFinder.java:104)}}{{ at org.apache.activemq.util.FactoryFinder$StandaloneObjectFactory.create(FactoryFinder.java:61)}}{{ at org.apache.activemq.util.FactoryFinder.newInstance(FactoryFinder.java:154)}}{{ at org.apache.activemq.transport.TransportFactory.findTransportFactory(TransportFactory.java:182)}}{{{} ... 7 more{}}}{{{}{}}} An [email from 2011 on the users mailing-list|https://lists.apache.org/thread/wbwdj8011tmcqtdlbbfmzsthjdrh0gn0] came to the same conclusion, but I don't see any further discussion on it. I've confirmed that the [META-INF/services/org/apache/activemq/transport|https://github.com/apache/activemq/tree/main/activemq-client/src/main/resources/META-INF/services/org/apache/activemq/transport] folder under activemq-client does not have a "jrms" file. > Removing JRMS dependency from assembly POM > ------------------------------------------ > > Key: AMQ-9469 > URL: https://issues.apache.org/jira/browse/AMQ-9469 > Project: ActiveMQ Classic > Issue Type: Improvement > Environment: Tested using the libraries from the ActiveMQ 5.18.3 > tarball downloaded from > https://activemq.apache.org/components/classic/download/ > Reporter: Kartik Ganesh > Priority: Minor > Time Spent: 10m > Remaining Estimate: 0h > > Hello! > I noticed that the ActiveMQ [assembly > pom.xml|https://github.com/apache/activemq/blob/main/assembly/pom.xml#L484-L486] > has a dependency on a very old library - "jrms-1.1" - and I'm wondering if I > can submit a PR to remove this. This library has not seen any > releases/updates since 2005 and > [Maven|https://mvnrepository.com/artifact/jrms/jrms/usages] lists only > ActiveMQ and Apache Camel as upstream usages. > After digging through ActiveMQ's mailing lists and commit history, I found > that it [used to be > listed|https://github.com/apache/activemq-web/blob/7a7d976c/2004/06/23/jgroups-and-jrms-support.xml] > on ActiveMQ's [URI > Protocols|https://activemq.apache.org/components/classic/documentation/uri-protocols] > page, but was removed at some point. JRMS seems to be listed as a > peer-to-peer option on the > [topologies|https://activemq.apache.org/components/classic/documentation/topologies] > page but is not discussed in either the > [peer|https://activemq.apache.org/components/classic/documentation/peer-transport-reference] > or > [multicast|https://activemq.apache.org/components/classic/documentation/multicast-transport-reference] > transport reference pages. > If I try to specify "jrms://" as a protocol for my ActiveMQConnectionFactory, > I see the following stack-trace: > {{javax.jms.JMSException: Could not create Transport. Reason: > java.io.IOException: Transport scheme NOT recognized: [jrms]}}{{ at > org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)}}{{ > at > org.apache.activemq.ActiveMQConnectionFactory.createTransport(ActiveMQConnectionFactory.java:378)}}{{ > at > org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:391)}}{{ > at > org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:349)}}{{ > at > org.apache.activemq.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:245)}}{{ > at App$HelloWorldProducer.run(App.java:66)}}{{ at > java.base/java.lang.Thread.run(Thread.java:840)}} > {{Caused by: java.io.IOException: Transport scheme NOT recognized: [jrms]}}{{ > at > org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:30)}}{{ > at > org.apache.activemq.transport.TransportFactory.findTransportFactory(TransportFactory.java:185)}}{{ > at > org.apache.activemq.transport.TransportFactory.connect(TransportFactory.java:64)}}{{ > at > org.apache.activemq.ActiveMQConnectionFactory.createTransport(ActiveMQConnectionFactory.java:376)}}{{ > ... 5 more}} > {{Caused by: java.io.IOException: Could not find factory class for resource: > META-INF/services/org/apache/activemq/transport/jrms}}{{ at > org.apache.activemq.util.FactoryFinder$StandaloneObjectFactory.loadProperties(FactoryFinder.java:104)}}{{ > at > org.apache.activemq.util.FactoryFinder$StandaloneObjectFactory.create(FactoryFinder.java:61)}}{{ > at > org.apache.activemq.util.FactoryFinder.newInstance(FactoryFinder.java:154)}}{{ > at > org.apache.activemq.transport.TransportFactory.findTransportFactory(TransportFactory.java:182)}}{{ > ... 7 more}} > > An [email from 2011 on the users > mailing-list|https://lists.apache.org/thread/wbwdj8011tmcqtdlbbfmzsthjdrh0gn0] > came to the same conclusion, but I don't see any further discussion on it. > I've confirmed that the > [META-INF/services/org/apache/activemq/transport|https://github.com/apache/activemq/tree/main/activemq-client/src/main/resources/META-INF/services/org/apache/activemq/transport] > folder under activemq-client does not have a "jrms" file. -- This message was sent by Atlassian Jira (v8.20.10#820010)