Does solace jms implement JMS 2.0 spec? - jms

I am trying to use the asyn send feature availabe in Solace, but I intend to use JMS for abstraction and not use it directly using JCSMP.
JMS 2.0 supports asyn send among other new features: http://www.oracle.com/technetwork/articles/java/jms2messaging-1954190.html
Does solace jms support JMS 2.0? If not, is there a plan to support it in near future?

The Solace JMS API does not currently support JMS 2.0. There are future plans to implement support for JMS 2.0 but a release date has not yet been determined.

It's now supported on AMQP Protocol :
https://tutorials.solace.dev/java-amqp-qpid-jms2

Related

Is the Solace message broker compatible with "regular" AMQP or JMS clients?

I'd like to use regular AMQP or JMS clients to connect to a Solace message broker but don't know enough about these protocols to know if they are compatible. From what I can tell Solace implements AMQP and JMS bu possibly with incompatible extensions (e.g. "message vpn").
Does Solace have incompatible extensions, particularly for JMS, or is there a straightforward way to get a JMS client to speak to a Solace broker with "message vpn" enabled?
The choice is yours as Solace provides both a JMS client implementation and it also supports AMQP 1.0.
Keep in mind that JMS is an API and AMQP is a protocol. The JMS API can be implemented over any suitable wire protocol, and AMQP can be exposed via any suitable API. JMS is Java-based and there are many JMS implementations using different protocols under the covers. There are also many AMQP clients written in different languages on different platforms all with different APIs. There are even projects which combine both JMS and AMQP like Qpid JMS.
Solace's PubSub+ event broker works on binary payloads which means that you can indeed publish and consume messages on cross protocols and APIs.
The Solace APIs have detailed documentation on how to process the payload in a type agnostic fashion.
As you can see in this diagram, we support a wide range of APIs and protocol integrations.
There are also sample codes present over at this Github account listing examples on using Solace broker with JMS and AMQP : https://github.com/SolaceSamples?
(Answering my own question).
I basically wanted to know if it was possible to connect to a Solace/JMS broker using more popular messaging libraries. As far as I can tell the answer is no in general.
For example,
one feature of JMS is JNDI lookup of the InitialContextFactory. I don't think that is possible to do outside of a JMS library.

JMS 2.0 support in Mule

I was trying out for the possibility to use JMS 2.0 in Mule. In my research I found that ActiveMQ supports JMS 2.0 with the combination of Spring 4.1.0.RELEASE here
Can any one suggest the ways to use JMS 2.0 in Mule ESB using above please.
Thanks .!!
Mule 4 JMS connector is fully complaint with JMS 2.0.
JMS connector is
Fully compliant with JMS 2.0, 1.1, and 1.0.2 specifications.
I'm afraid there is no JMS2.0 support in MuleESB at this very moment, just 1.0.2b and 1.1. It has been on the radar for a while but no plans to support it yet.
Which features of JMS2.0 do you need? If it's competing consumers on topics are supported with activemq and 1.1 with virtual topics, and there is also a more poweful scheduled send than what it is in 2.0.

How does the JMS API work with ActiveMQ

NEWBIE Question here, maybe I am way off...
When I send a JMS text message to an ActiveMQ topic using the activemq-all jar, is a JMS message actually sent over the wire, or does ActiveMQ actually map/transform the message to pure AMQP?
Thanks.
JMS is an API specification and not a wire level protocol specification. It defines a set of APIs a Messaging provider must implement to call the messaging provider a JMS provider. How the JMS APIs are implemented is internal to the implementer. ActiveMQ might(or does) use AMQP protocol under the hood to implement JMS APIs. Others, for example, IBM MQ uses it's own proprietary protocol.

How to use AMQP instead of JMS with Ehcache?

Ehcache supports OpenMQ and ActiveMQ natively and uses JMS for synchronization.
Is it possible to use RabbitMQ with AMQP instead ?
I am aware of https://github.com/jamescarr/ehcache-amqpreplication/pull/2 project but it seems to be old and not used by larger community.
Is there an alternative? What exactly must be done to use AMQP and RabbitMQ in Ehcache?

Using existing JMS libraries with a AMQP broker (RabbitMQ)

We use RabbitMQ and Spring-AMQP for our messaging system.
However there are many Java libraries that use JMS that I would rather not rewrite to AMQP.
I failed to Google a JMS client that will use AMQP.
Should I just rewrite the library to use AMQP directly?
qpid , which also speaks amqp , has a JMS client library. Perhaps that also works with rabbitmq.
There's some (old) indications the OpenAMQ library works works with rabbitmq
Depending on what you're actually building, you'll probably find that Spring Integration is useful:
http://www.springsource.org/spring-integration
It abstracts the concepts of end points, such that they are pluggable and there is built-in support for JMS & AMQP.
It's fairly trivial to build a simple AMQP <-> JMS adapter.

Resources