0

I'm using Apache QPID with Java an as AMQP implementation and I've just got proton-j upgraded to version 0.16 (automatically, even though Maven web site still lists 0.15 as the latest version - weird) and now my use of the Messenger API is marked as deprecated, with the helpful message:

Messenger will be removed from upcoming proton-j releases.

But what to use instead? I don't see any other candidate for high level message delivery API, and the examples in the Proton source also still show Messenger as the high level messaging API.

I see that there is also a thing called Reactor (which isn't actually new) but that is a low level reactor pattern implementation and their message sending example assumes I'm going to handle message marshaling myself over (almost) raw sockets.

Is there any hope for a Proton-J user that needs a high level messaging API?

Guss
  • 30,470
  • 17
  • 104
  • 128

1 Answers1

1

At the moment the Qpid project is still evaluating the road forward for a simple Java based AMQP client that lives alongside proton-j or as its own project. There are some other options though:

You can use Qpid JMS which is using Proton-J under the covers, this would give you a JMS client that speaks AMQP v1.0 and supports connection failover.

Another option is the vertx-proton that is part of Vert.x v3.2+ I believe. The maven repo for this is here.

Tim Bish
  • 17,475
  • 4
  • 32
  • 42
  • I think its a problem that while still evaluating where they are going with the AMQP client, without providing any future implementation or even direction, they are removing the working implementation they do have. This is basically a kick in the nuts to their users. I wasn't aware of the Vert.X implementation, which looks to be implemented using the Proton reactor framework, and as I'm already using Vert.X in the project - I'll check that out. – Guss Jan 09 '17 at 09:31
  • You are welcome to contribute to the project if you'd like to provide support for the messenger client. – Tim Bish Jan 09 '17 at 13:45
  • Well, now that I've played with it - I really like the Vert.x based implementation . I had some problems with the `Messenger` API - the least of it was that it carped to the logs every time the "wait for messages" call times out (which it supposed to do when idling). – Guss Jan 09 '17 at 15:45