A competitor of ours just announced a new product that (in their words)...
...extends and bridges proprietary message-oriented middleware (MOM) products, like TIBCO Rendezous, IBM WebSphereMQ (formerly MQ Series), SonicMQ and any other JMS-based solution, to support any standards-based Web services endpoint.
The product described above is a gateway (in fact, it has the word "gateway" in its name). Gateways are simplistic -- anyone can write one. Gateways add moving parts to your system that must be deployed, maintained, and managed, and since they're intermediaries, gateways increase overall system complexity while reducing performance, throughput, and scalability. Worst of all, if they're done poorly, gateways can be single points of failure, reducing overall system reliability and availability.
If you were traveling in another country where they spoke a different language, would you prefer to be able to read and speak that language yourself, or would you rather have to rely on translators to allow you to converse with the natives? The preferred approach should be fairly obvious -- the overhead of the translator route is significant, making it hard to get anything done. Gateways are similarly poor solutions for most integration cases.
Disintermediation is where it's at. Adding support for multiple protocols, transports, and wire formats directly into the service and consumer applications themselves allows them to converse directly with each other even though they might be built on totally different platforms or technologies. As I explained in a previous blog entry, service capabilities and business logic should be independent of whatever transports, wire formats, or protocols are used to talk to them.
Supporting disintermediation is precisely why we designed our Artix web services product in a way that allows it to be embedded directly into applications, thus providing them with multi-middleware capabilities. Artix supports MQ, TIBCO, JMS, Tuxedo, CORBA, and SOAP over HTTP/S for C++ and Java applications. And when SOAP or the others eventually get displaced by some newer fancier protocol, which of course is inevitable, your Artix-based application will be able to adopt them quite simply via new dynamically-loaded plug-ins (all Artix transports are implemented that way).
Of course, supporting multiple transports and protocols isn't easy. But even harder than that is supporting security and management across those multiple approaches. Since we know that our solution wouldn't be viable without such support, we provide significant enterprise-quality security support and management solutions.
It all has to perform well too, and Artix performance is outstanding, especially given its high degree of flexibility.
About the only place where it's OK to suffer a gateway is a situation in which the applications involved absolutely can't be touched. For such situations, Artix can also deployed as an intermediary. However, unlike some of our competitors, we give you the choice of using a gateway or taking the disintermediation route, rather than forcing you to adopt a slow, high-maintenance gateway for all cases.
Given all the above, if I had to compete against Artix, I'd personally be embarrassed to issue a press release touting a mere gateway.
Anyway, like I always say, find out for yourself: download Artix and give it a try.