|
The Spring Framework | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.springframework.jms.support.JmsAccessor
public abstract class JmsAccessor
Base class for JmsTemplate
and other
JMS-accessing gateway helpers, defining common properties like the
ConnectionFactory
. The subclass
JmsDestinationAccessor
adds further, destination-related properties.
Not intended to be used directly. See JmsTemplate
.
JmsDestinationAccessor
,
JmsTemplate
Field Summary | |
---|---|
protected Log |
logger
Logger available to subclasses |
Constructor Summary | |
---|---|
JmsAccessor()
|
Method Summary | |
---|---|
void |
afterPropertiesSet()
Invoked by a BeanFactory after it has set all bean properties supplied (and satisfied BeanFactoryAware and ApplicationContextAware). |
protected JmsException |
convertJmsAccessException(JMSException ex)
Convert the specified checked JMSException to
a Spring runtime JmsException
equivalent. |
ConnectionFactory |
getConnectionFactory()
Return the ConnectionFactory to use for obtaining JMS Connections. |
int |
getSessionAcknowledgeMode()
Return the acknowledgement mode for JMS sessions . |
boolean |
isSessionTransacted()
Return whether the JMS sessions used by this
accessor are supposed to be transacted. |
void |
setConnectionFactory(ConnectionFactory connectionFactory)
Set the ConnectionFactory to use for obtaining JMS Connections. |
void |
setSessionAcknowledgeMode(int sessionAcknowledgeMode)
Set the JMS acknowledgement mode that is used when creating a JMS Session to send a message. |
void |
setSessionAcknowledgeModeName(String constantName)
Set the JMS acknowledgement mode by the name of the corresponding constant in the JMS Session interface, e.g. |
void |
setSessionTransacted(boolean sessionTransacted)
Set the transaction mode that is used when creating a JMS Session . |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final Log logger
Constructor Detail |
---|
public JmsAccessor()
Method Detail |
---|
public void setConnectionFactory(ConnectionFactory connectionFactory)
public ConnectionFactory getConnectionFactory()
public void setSessionTransacted(boolean sessionTransacted)
Session
.
Default is "false".
Note that that within a JTA transaction, the parameters to
create(Queue/Topic)Session(boolean transacted, int acknowledgeMode)
method are not taken into account. Depending on the J2EE transaction context,
the container makes its own decisions on these values. See section 17.3.5
of the EJB specification. Analogously, these parameters are not taken into
account within a locally managed transaction either, since the accessor
operates on an existing JMS Session in this case.
Setting this flag to "true" will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. The latter has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction.
sessionTransacted
- the transaction modeConnection.createSession(boolean, int)
public boolean isSessionTransacted()
sessions
used by this
accessor are supposed to be transacted.
true
if the JMS Sessions used
for sending a message are transactedsetSessionTransacted(boolean)
public void setSessionAcknowledgeModeName(String constantName)
Session
interface, e.g. "CLIENT_ACKNOWLEDGE".
If you want to use vendor-specific extensions to the acknowledgment mode,
use setSessionAcknowledgeModeName(String)
instead.
constantName
- the name of the Session
acknowledge mode constantSession.AUTO_ACKNOWLEDGE
,
Session.CLIENT_ACKNOWLEDGE
,
Session.DUPS_OK_ACKNOWLEDGE
,
Connection.createSession(boolean, int)
public void setSessionAcknowledgeMode(int sessionAcknowledgeMode)
Session
to send a message.
Default is Session.AUTO_ACKNOWLEDGE
.
Vendor-specific extensions to the acknowledgment mode can be set here as well.
Note that that inside an EJB the parameters to create(Queue/Topic)Session(boolean transacted, int acknowledgeMode) method are not taken into account. Depending on the transaction context in the EJB, the container makes its own decisions on these values. See section 17.3.5 of the EJB spec.
sessionAcknowledgeMode
- the acknowledgement modeSession.AUTO_ACKNOWLEDGE
,
Session.CLIENT_ACKNOWLEDGE
,
Session.DUPS_OK_ACKNOWLEDGE
,
Connection.createSession(boolean, int)
public int getSessionAcknowledgeMode()
sessions
.
public void afterPropertiesSet()
InitializingBean
This method allows the bean instance to perform initialization only possible when all bean properties have been set and to throw an exception in the event of misconfiguration.
afterPropertiesSet
in interface InitializingBean
protected JmsException convertJmsAccessException(JMSException ex)
JMSException
to
a Spring runtime JmsException
equivalent.
Default implementation delegates to the
JmsUtils.convertJmsAccessException(javax.jms.JMSException)
method.
ex
- the original checked JMSException
to convert
JmsException
wrapping ex
JmsUtils.convertJmsAccessException(javax.jms.JMSException)
|
The Spring Framework | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |