Message-driven beans - automatic message retrieval


 

+

Search Tips   |   Advanced Search

 

WAS supports the use of message-driven beans as asynchronous message consumers.

This figure shows an incoming message being passed automatically to the onMessage() method of a message-driven bean that is deployed as a listener for the destination. The message-driven bean processes the message, in this case passing the message on to a business logic bean for business processing.

A client sends messages to the destination for which the message-driven bean is deployed as the message listener. When a message arrives at the destination, the EJB container invokes the message-driven bean automatically without an application having to explicitly poll the destination. The message-driven bean implements some business logic to process incoming messages on the destination.

Message-driven beans can be...

With a JCA 1.5 resource adapter, message-driven beans can handle generic message types, not just JMS messages. In the JCA 1.5 specification, such message-driven beans are commonly called message endpoints or simply endpoints.

All message-driven beans must implement the MessageDrivenBean interface. For JMS messaging, a message-driven bean must also implement javax.jms.MessageListener.

IBM recommends developing message-driven beans that delegate the business processing of incoming messages to another enterprise bean, to provide clear separation of message handling and business processing. This also enables the business processing to be invoked by either the arrival of incoming messages or, for example, from a WebSphere J2EE client.

Messages arriving at a destination being processed by a message-driven bean have no client credentials associated with them; the messages are anonymous. Security depends on the role specified by the RunAs Identity for the message-driven bean as an EJB component.

For JMS messaging, message-driven beans can use a JMS provider that has a JCA 1.5 resource adapter, for example the default messaging provider that is part of WAS or the WebSphere MQ messaging provider. With a JCA 1.5 resource adapter, you deploy EJB 2.1 message-driven beans as JCA 1.5-compliant resources, to use a J2C activation specification.

If the JMS provider does not have a JCA 1.5 resource adapter, for example the V5 default messaging provider, configure JMS message-driven beans against a listener port.



Subtopics

Message-driven beans - JCA components
J2C activation spec configuration and use
Activation spec optional binding properties
Message-driven beans - transaction support
Message-driven beans - listener port components

 

Related concepts

Introduction: Messaging resources