Class JmsMessageEndpointFactory
- java.lang.Object
- org.springframework.jca.endpoint.AbstractMessageEndpointFactory
- org.springframework.jms.listener.endpoint.JmsMessageEndpointFactory
- All Implemented Interfaces:
MessageEndpointFactory
,Aware
,BeanNameAware
public class JmsMessageEndpointFactory extends AbstractMessageEndpointFactory
JMS-specific implementation of the JCA 1.5MessageEndpointFactory
interface, providing transaction management capabilities for a JMS listener object (e.g. aMessageListener
object).Uses a static endpoint implementation, simply wrapping the specified message listener object and exposing all of its implemented interfaces on the endpoint instance.
Typically used with Spring's
JmsMessageEndpointManager
, but not tied to it. As a consequence, this endpoint factory could also be used with programmatic endpoint management on a nativeResourceAdapter
instance.- Since:
- 2.5
- Author:
- Juergen Hoeller, Stephane Nicoll
- See Also:
setMessageListener(javax.jms.MessageListener)
,AbstractMessageEndpointFactory.setTransactionManager(java.lang.Object)
,JmsMessageEndpointManager
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
JmsMessageEndpointFactory.JmsResourceException
Internal exception thrown when a ResourceException has been encountered during the endpoint invocation.Nested classes/interfaces inherited from class org.springframework.jca.endpoint.AbstractMessageEndpointFactory
AbstractMessageEndpointFactory.AbstractMessageEndpoint
Field Summary
Fields inherited from class org.springframework.jca.endpoint.AbstractMessageEndpointFactory
logger
Constructor Summary
Constructors Constructor Description JmsMessageEndpointFactory()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected AbstractMessageEndpointFactory.AbstractMessageEndpoint
createEndpointInternal()
Creates a concrete JMS message endpoint, internal to this factory.protected MessageListener
getMessageListener()
Return the JMS MessageListener for this endpoint.void
setMessageListener(MessageListener messageListener)
Set the JMS MessageListener for this endpoint.Methods inherited from class org.springframework.jca.endpoint.AbstractMessageEndpointFactory
createEndpoint, createEndpoint, getActivationName, isDeliveryTransacted, setBeanName, setTransactionFactory, setTransactionManager, setTransactionName, setTransactionTimeout
Constructor Detail
JmsMessageEndpointFactory
public JmsMessageEndpointFactory()
Method Detail
setMessageListener
public void setMessageListener(MessageListener messageListener)
Set the JMS MessageListener for this endpoint.
getMessageListener
protected MessageListener getMessageListener()
Return the JMS MessageListener for this endpoint.
createEndpointInternal
protected AbstractMessageEndpointFactory.AbstractMessageEndpoint createEndpointInternal() throws UnavailableException
Creates a concrete JMS message endpoint, internal to this factory.- Specified by:
createEndpointInternal
in classAbstractMessageEndpointFactory
- Returns:
- the actual endpoint instance (never
null
) - Throws:
UnavailableException
- if no endpoint is available at present