yep.... here is the snippet of code of some test code:

1)      topicConnection = topicConnectionFactory.createTopicConnection();
2)      topicConnection.setExceptionListener(new ExceptionHandler());
3)      topicSession = topicConnection.createTopicSession(false,
Session.AUTO_ACKNOWLEDGE);
4)      topic = topicSession.createTopic(topicName);

5)      topicSubscriber = topicSession.createSubscriber(topic);
6)      //topicListener = new TextListener();
7)      //topicSubscriber.setMessageListener(topicListener);

8)      System.out.println("Starting subscriber press CTRL+C to kill");
9)      topicConnection.start();

10)      // now lets wait forever to avoid the JVM terminating immediately
11)      //Object lock = new Object();
12)      //synchronized (lock)
13)      //{
14)      //  lock.wait();
15)      //}

16)      while (true)
17)      {
18)        System.out.println("@@@@ " + topicSubscriber.receive
().toString());
19)        //Thread.sleep(1000);
20)      }

If I comment out lines 16-20,  and uncomment lines 6-7 and 10-15 then
everthing works.....

On 9/11/06, Jonas Lim <[EMAIL PROTECTED]> wrote:

Hi,

Can you check if you're calling the connection's start method
(connection.start()) before calling the receive() method?

Regards,
Jonas


----- Original Message -----
From: "rabidgremlin" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Monday, September 11, 2006 7:48 AM
Subject: receive() method not working on TopicSubscriber


> Hi All,
>
> I have a piece of code which sets up a TopicSubscriber with a
> MessageListener. This works fine.
>
> I'm now trying to poll the TopicSubscriber instead (it suits my code
> better).
>
> So now my code does not register a listener and simply calls receive()
on
> the TopicSubscriber.
>
> However this does not work :( The receive() method never returns.
>
> What do I need to do differently to get the receive() method to function
> correctly ?
>
> Thanks
>
> Jonathan
>


Reply via email to