Advice on approaching a JMS implementation

If you were a JMS provider and you owned the protocol stacks to multiple messaging paradigms (TIB, MQSeries, MSMQ, SonicMQ) how would you approach a JMS implementation? Would you build a JMS client library that could communicate to all or would you keep them separate? Why?

    Requires Free Membership to View

I'd expect that more than 90% of the source code would be identical, for each of these JMS client libraries. Hence I would create a "facade" interface as an abstraction of the underlying messaging implementation (TIB, MQSeries, etc.). The JMS classes (Session, Destination, Message, etc.) would then be written against this portability API. Finally, an "adaptor" needs to be written for each particular messaging product. The adaptor implements the portability API atop the vendor proprietary MOM API (TIB, MQSeries, etc.). The adaptors I would keep separate from each other.

This was first published in October 2001

Join the conversationComment

Share
Comments

    Results

    Contribute to the conversation

    All fields are required. Comments will appear at the bottom of the article.