- java.lang.Object
-
- javax.jms.TopicRequestor
-
public class TopicRequestor extends Object
TheTopicRequestor
helper class simplifies making service requests.The
TopicRequestor
constructor is given a non-transactedTopicSession
and a destinationTopic
. It creates aTemporaryTopic
for the responses and provides arequest
method that sends the request message and waits for its reply.This is a very basic request/reply abstraction which assumes the session is non-transacted with a delivery mode of either AUTO_ACKNOWLEDGE or DUPS_OK_ACKNOWLEDGE. It is expected that most applications will create less basic implementations.
- Since:
- JMS 1.0
- Version:
- JMS 2.0
- See Also:
QueueRequestor
-
-
Constructor Summary
Constructors Constructor and Description TopicRequestor(TopicSession session, Topic topic)
Constructor for theTopicRequestor
class.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description void
close()
Closes theTopicRequestor
and its session.Message
request(Message message)
Sends a request and waits for a reply.
-
-
-
Constructor Detail
-
TopicRequestor
public TopicRequestor(TopicSession session, Topic topic) throws JMSException
Constructor for theTopicRequestor
class.This implementation assumes the session parameter to be non-transacted, with a delivery mode of either
AUTO_ACKNOWLEDGE
orDUPS_OK_ACKNOWLEDGE
.- Parameters:
session
- theTopicSession
the topic belongs totopic
- the topic to perform the request/reply call on- Throws:
JMSException
- if the JMS provider fails to create theTopicRequestor
due to some internal error.InvalidDestinationException
- if an invalid topic is specified.
-
-
Method Detail
-
request
public Message request(Message message) throws JMSException
Sends a request and waits for a reply. The temporary topic is used for theJMSReplyTo
destination; the first reply is returned, and any following replies are discarded.- Parameters:
message
- the message to send- Returns:
- the reply message
- Throws:
JMSException
- if the JMS provider fails to complete the request due to some internal error.
-
close
public void close() throws JMSException
Closes theTopicRequestor
and its session.Since a provider may allocate some resources on behalf of a
TopicRequestor
outside the Java virtual machine, clients should close them when they are not needed. Relying on garbage collection to eventually reclaim these resources may not be timely enough.Note that this method closes the
TopicSession
object passed to theTopicRequestor
constructor.- Throws:
JMSException
- if the JMS provider fails to close theTopicRequestor
due to some internal error.
-
-
Document created the 11/06/2005, last modified the 18/08/2025
Source of the printed document:https://www.gaudry.be/en/java-api-javaee-rf-javax/jms/TopicRequestor.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author of this site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.