org.springframework.integration.core
Interface MessageHandler

All Known Implementing Classes:
AbstractInternetProtocolSendingMessageHandler, AbstractMessageHandler, AbstractMessageRouter, AbstractMessageSplitter, AbstractRemotingOutboundGateway, AbstractReplyProducingMessageHandler, AbstractWebServiceOutboundGateway, AbstractXmppConnectionAwareMessageHandler, ApplicationEventPublishingMessageHandler, BridgeHandler, ByteStreamWritingMessageHandler, CharacterStreamWritingMessageHandler, ChatMessageSendingMessageHandler, CorrelatingMessageBarrier, CorrelatingMessageHandler, DefaultMessageSplitter, DelayHandler, DirectMessageSendingMessageHandler, ErrorMessageExceptionTypeRouter, ExpressionEvaluatingRouter, ExpressionEvaluatingSplitter, FileTransferringMessageHandler, FileWritingMessageHandler, HeaderValueRouter, HttpInvokerOutboundGateway, HttpRequestExecutingMessageHandler, JdbcMessageHandler, JdbcOutboundGateway, JmsOutboundGateway, JmsSendingMessageHandler, LoggingHandler, MailSendingMessageHandler, MarshallingWebServiceOutboundGateway, MessageFilter, MessageHandlerChain, MessageTransformingHandler, MethodInvokingMessageHandler, MethodInvokingRouter, MethodInvokingSplitter, MulticastSendingMessageHandler, NotificationPublishingMessageHandler, OperationInvokingMessageHandler, PayloadTypeRouter, PresenceSendingMessageHandler, RecipientListRouter, RmiOutboundGateway, ServiceActivatingHandler, SimpleWebServiceOutboundGateway, StatusUpdatingMessageHandler, TcpOutboundGateway, TcpSendingMessageHandler, UnicastSendingMessageHandler, XPathMessageSplitter, XPathRouter

public interface MessageHandler

Base interface for any component that handles Messages.


Method Summary
 void handleMessage(Message<?> message)
          Handles the message if possible.
 

Method Detail

handleMessage

void handleMessage(Message<?> message)
                   throws MessagingException
Handles the message if possible. If the handler cannot deal with the message this will result in a MessageRejectedException e.g. in case of a Selective Consumer. When a consumer tries to handle a message, but fails to do so, a MessageHandlingException is thrown. In the last case it is recommended to treat the message as tainted and go into an error scenario.

When the handling results in a failure of another message being sent (e.g. a "reply" message), that failure will trigger a MessageDeliveryException.

Parameters:
message - the message to be handled
Throws:
MessageRejectedException - if the handler doesn't accept the message
MessageHandlingException - when something fails during the handling
MessageDeliveryException - when this handler failed to deliver the reply related to the handling of the message
MessagingException