The Ultra Messaging® JMS API lets you develop or port Java messaging applications written per the JMS (Java Message Servicea) specification and still utilize much of the flexibility and performance benefits of Ultra Messaging. Ultra Messaging JMS is included with the Ultra Messaging UMQ edition.
This document describes how Ultra Messaging JMS integrates JMS applications with Ultra Messaging, and requires that you have a background in JMS and Ultra Messaging concepts. Please refer to the following:
The following specific issues regarding JMS compliance are not fully supported in the 5.3.6 (or earlier) release of Ultra Messaging JMS.
The recover()
method (for session recovery) is not
implemented.
Though Ultra Messaging JMS with UMQ uses a push model, not a pull model, for delivering messages from a queue to a receiver, Ultra Messaging JMS is designed to emulate the pull model. This behavior is transparent in most, but not all, applications.
Current UM message property names do not follow the requirement for provider-supplied property naming.
The TopicSubscriber NoLocal attribute is not implemented.
JMSMessageID is not passed over the wire from sender to receiver. This is replaced with a UM JMSMessageID and it does not occur as a message property in the message itself. This impacts applications that rely upon this message property to select or process a message.
The following UM features are currently not fully supported in the 5.3.6 (or earlier) release of Ultra Messaging JMS. For information on UM feature support, see Interoperability.
Using wildcard and non-wildcard receivers simultaneously
Ultra Messaging JMS across the UM Gateway
UMQ Ultra Load Balancing
Informatica is aware of the following issues:
You cannot have duplicate (same topic) subscribers on the same connection (or queue session ID).
You cannot unsubscribe durable subscribers (Unsubscribe()
API) during receiver creation.
Advisory messages such as beginning or end of transport are not implemented.
Fault tolerance for process-level transaction handling
Zero length messages between Ultra Messaging JMS and Ultra Messaging Desktop Services
Ultra Messaging JMS JAR installation not compatible with Microsoft® Windows® due to a new dependency on libeay32.dll. As a workaround, set use_native_loader=false and load the dependencies from the PATH.
UM native clients interoperating with JMS clients require significant effort to decode MapMessages.
Transactions are not resilient to application or messaging component failures that occur during a transaction.
Durable topic subscribers may receive duplicate messages when publishers go down, due to UMP Proxy Source behavior.
Publishers cannot send to a queue and a topic with the same name using the same JMS connection.
Messages are not ordered across publishers on the same topic (not required per spec, but often expected).
Next | ||
Ultra Messaging JMS Overview |
Copyright (c) 2004 - 2014 Informatica Corporation. All rights reserved.