[ 
https://issues.apache.org/jira/browse/AMQ-9469?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Bertram 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 
this can be removed. 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:
{noformat}
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{noformat}
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 
this can be removed. 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.


> 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 
> this can be removed. 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:
> {noformat}
> 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{noformat}
> 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)

Reply via email to