JMS的持久订阅???

ljunf888 2003-08-05 02:29:29
大家好,我最近在搞JMS,其中用到TOPIC的持久订阅,不过折腾了我几天,哎!还是没有一个结果;
先订阅主题,然后发布消息一切运行正常,而先发布消息到一个主题,然后在订阅,却收不到消息啊???按照下边的方法调用了setClientID,也不行啊!!!
topicConnectionFactory = SampleUtilities.getTopicConnectionFactory();
topicConnection = topicConnectionFactory.createTopicConnection();
topicConnection.setClientID("3721");//都说是调用了这个函数就行的,可是???
topicSession = topicConnection.createTopicSession(false,
Session.AUTO_ACKNOWLEDGE);
topic = SampleUtilities.getTopic(topicName, topicSession);
topicConnection.stop();//为什么先STOP??
topicSubscriber = topicSession.createDurableSubscriber(topic,
"3721");//
topicListener = new TextListener();
topicSubscriber.setMessageListener(topicListener);
topicConnection.start();//有时候是异步,有时候就被阻塞,我晕???
我不明白,持久订阅怎样保存它要订阅的消息,靠client-id,不过topicConnection一断掉,那么JMS又会怎样维护这个client-id?文档说注册client-id有两种方法,其中setClientID函数是动态的,那另外一种方法是什么呢?(我用的JMS Provider是OC4J FOR ORACLE)
还有人说必须用嵌套类??不过SUN带的一个例子就是嵌套的??
...全文
56 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
wdz_wdz 2003-08-08
  • 打赏
  • 举报
回复
订阅肯定应该在发布之前
否则先发布
再订阅
只能收到在订阅之后发布的消息

51,407

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧