A client uses a
MessageProducer
object to send messages to a destination. A
MessageProducer
object is created by passing a
Destination
object to a message-producer creation method supplied by a session.
MessageProducer
is the parent interface for all message producers.
A client also has the option of creating a message producer without supplying a destination. In this case, a destination must be provided with every send operation. A typical use for this kind of message producer is to send replies to requests using the request's JMSReplyTo
destination.
A client can specify a default delivery mode, priority, and time to live for messages sent by a message producer. It can also specify the delivery mode, priority, and time to live for an individual message.
A client can specify a time-to-live value in milliseconds for each message it sends. This value defines a message expiration time that is the sum of the message's time-to-live and the GMT when it is sent (for transacted sends, this is the time the client sends the message, not the time the transaction is committed).
A JMS provider should do its best to expire messages accurately; however, the JMS API does not define the accuracy provided.
@version $Revision: 1.14 $
@see javax.jms.TopicPublisher
@see javax.jms.QueueSender
@see javax.jms.Session#createProducer