javax.xml.messaging

## Interface ReqRespListener

    public interface ReqRespListener

A marker interface for components that are intended to be consumers of request-response messages. In the request-response style of messaging, sending a request and receiving the response are both done in a single operation. This means that the client sending the request cannot do anything else until after it has received the response.

From the standpoint of the sender, a message is sent via the `SOAPConnection` method `call` in a point-to-point fashion. The method `call` blocks, waiting until it gets a response message that it can return. The sender may be a standalone client, or it may be deployed in a container.

The receiver, typically a service operating in a servlet, implements the `ReqRespListener` method `onMessage` to specify how to respond to the requests it receives.

It is possible that a standalone client might use the method `call` to send a message that does not require a response. For such cases, the receiver must implement the method `onMessage` such that it returns a message whose only purpose is to unblock the `call` method.

See Also:
  `JAXMServlet`, `OnewayListener`, `SOAPConnection.call(javax.xml.soap.SOAPMessage, java.lang.Object)`

### Method Summary

Methods
`javax.xml.soap.SOAPMessage` `onMessage(javax.xml.soap.SOAPMessage message)` Passes the given `SOAPMessage` object to this `ReqRespListener` object and returns the response.

### Method Detail

#### onMessage

    javax.xml.soap.SOAPMessage onMessage(javax.xml.soap.SOAPMessage message)

Passes the given `SOAPMessage` object to this `ReqRespListener` object and returns the response. This method is invoked behind the scenes, typically by the container (servlet or EJB container) after the messaging provider delivers the message to the container. It is expected that EJB Containers will deliver JAXM messages to EJB components using message driven Beans that implement the `javax.xml.messaging.ReqRespListener` interface.

Parameters:
  `message` - the `SOAPMessage` object to be passed to this `ReqRespListener` object
Returns:
  the response. If this is `null`, then the original message is treated as a "oneway" message.