@NonNullApi @NonNullFields

# Package org.springframework.jms.listener

This package contains the base message listener container facility.

See: Description

Interface Summary
MessageListenerContainer: Internal abstraction used by the framework representing a message listener container.
SessionAwareMessageListener<M extends Message>: Variant of the standard JMS `MessageListener` interface, offering not only the received Message but also the underlying JMS Session object.
SubscriptionNameProvider: Interface to be implemented by message listener objects that suggest a specific name for a durable subscription that they might be registered with.

Class Summary
AbstractJmsListeningContainer: Common base class for all containers which need to implement listening based on a JMS Connection (either shared or freshly obtained for each attempt).
AbstractMessageListenerContainer: Abstract base class for Spring message listener container implementations.
AbstractPollingMessageListenerContainer: Base class for listener container implementations which are based on polling.
DefaultMessageListenerContainer: Message listener container variant that uses plain JMS client APIs, specifically a loop of `MessageConsumer.receive()` calls that also allow for transactional reception of messages (registering them with XA transactions).
SimpleMessageListenerContainer: Message listener container that uses the plain JMS client API's `MessageConsumer.setMessageListener()` method to create concurrent MessageConsumers for the specified listeners.

Exception Summary
AbstractJmsListeningContainer.SharedConnectionNotInitializedException: Exception that indicates that the initial setup of this container's shared JMS Connection failed.

## Package org.springframework.jms.listener Description

This package contains the base message listener container facility. It also offers the DefaultMessageListenerContainer and SimpleMessageListenerContainer implementations, based on the plain JMS client API.