Java JBoss4.0.2上的JMS主题
我必须更改已经设置好的jboss 4.0.2环境的配置。已经建立的主题需要更改名称。所以我在它需要的地方修改了它,比如/home/jboss-4.0.2/server/myappinstance/conf下的属性文件/ 以及列出主题的jboss service.xml主文件 mytopic-Destination-service.xmlJava JBoss4.0.2上的JMS主题,java,jms-topic,jboss-4.0.x,Java,Jms Topic,Jboss 4.0.x,我必须更改已经设置好的jboss 4.0.2环境的配置。已经建立的主题需要更改名称。所以我在它需要的地方修改了它,比如/home/jboss-4.0.2/server/myappinstance/conf下的属性文件/ 以及列出主题的jboss service.xml主文件 mytopic-Destination-service.xml <server> <!-- event publish destination --> <mbean code="org.
<server>
<!-- event publish destination -->
<mbean code="org.jboss.mq.server.jmx.Topic"
name="jboss.mq.destination:service=Topic,name=myTopic">
<depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends>
</mbean>
</server>
jboss.mq:service=DestinationManager
及
myapp-jms-destinations-service.xml(基本相同,不确定它最初被拆分的原因)
主题/我的主题
问题/收入事件
我在jboss日志中看到的错误如下:
org.jboss.deployment.DeploymentException: Error during topic setup; - nested throwable: (org.jboss.mq.SpyJMSException: Cannot subscribe to this Destination: ; - nested throwable: (java.lang.NullPointerException))
.........
......
....
Caused by: org.jboss.mq.SpyJMSException: Cannot subscribe to this Destination: ;
- nested throwable: (java.lang.NullPointerException)
at org.jboss.mq.SpyJMSException.getAsJMSException(SpyJMSException.java:66)
at org.jboss.mq.SpyJMSException.rethrowAsJMSException(SpyJMSException.java:51)
at org.jboss.mq.Connection.addConsumer(Connection.java:835)
at org.jboss.mq.SpyConnectionConsumer.<init>(SpyConnectionConsumer.java:95)
at org.jboss.mq.SpyConnection.createDurableConnectionConsumer(SpyConnection.java:156)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerCreate(JMSContainerInvoker.java:789)
... 140 more Caused by: java.lang.NullPointerException
at org.jboss.mq.sm.AbstractStateManager.setDurableSubscription(AbstractStateManager.java:134)
at org.jboss.mq.server.JMSTopic.addSubscriber(JMSTopic.java:95)
at org.jboss.mq.server.ClientConsumer.addSubscription(ClientConsumer.java:133)
at org.jboss.mq.server.JMSDestinationManager.subscribe(JMSDestinationManager.java:596)
org.jboss.deployment.DeploymentException:主题设置期间出错;-嵌套的throwable:(org.jboss.mq.spyjmsception:无法订阅此目标:;-嵌套的throwable:(java.lang.NullPointerException))
.........
......
....
原因:org.jboss.mq.spyjmsceception:无法订阅此目标:;
-嵌套可丢弃:(java.lang.NullPointerException)
位于org.jboss.mq.spyjmscexception.getasjmscexception(spyjmscexception.java:66)
位于org.jboss.mq.spyjmscexception.rethrowasjmscexception(spyjmscexception.java:51)
位于org.jboss.mq.Connection.addConsumer(Connection.java:835)
请访问org.jboss.mq.SpyConnectionConsumer。(SpyConnectionConsumer.java:95)
位于org.jboss.mq.SpyConnection.createDurableConnectionConsumer(SpyConnection.java:156)
位于org.jboss.ejb.plugins.jms.jmscontainervoker.innerCreate(jmscontainervoker.java:789)
... 140多个原因:java.lang.NullPointerException
位于org.jboss.mq.sm.AbstractStateManager.setDurableSubscription(AbstractStateManager.java:134)
位于org.jboss.mq.server.JMSTopic.addSubscriber(JMSTopic.java:95)
位于org.jboss.mq.server.ClientConsumer.addSubscription(ClientConsumer.java:133)
位于org.jboss.mq.server.JMSDestinationManager.subscribe(JMSDestinationManager.java:596)
如果你注意到上面写着:
org.jboss.mq.spyjmsceception:无法订阅此目标:
“Destination:”和“;”之间有一个空格这意味着目标的名称为空。现在,当我使用原始名称LP1时,当我将其更改为myTopic时,它会给我这个错误。我搜索了这个问题,它似乎是一个配置问题,但我似乎无法确定问题所在
我检查了代码,主题名称也没有硬编码在代码中。我删除了work和tmp目录,只是为了删除任何缓存的配置 是否删除了邮件数据库文件?或者,您是否取消了对主题原始名称的订阅?我认为代码知道订阅的原始主题名称,但具有该名称的主题不再存在 是否删除了邮件数据库文件?或者,您是否取消了对主题原始名称的订阅?我认为代码知道订阅的原始主题名称,但具有该名称的主题不再存在。消息传递数据库文件是什么?嗯,你的回答有道理。我正在关闭jboss,这是否会取消订阅该主题。如果您使用“仅内存”高超音速数据库进行消息传递,则您的订阅将无法在服务器重新启动后继续生存。如果您正在使用数据库进行消息传递,则订阅在数据库重新启动后仍然有效。看看服务器概要文件deployhasingleton/jms
目录中的文件。我想就是这样。我有一个带有JMS_SUBSCRPTION表的高超音速数据库,那里的主题名称不同,所以我纠正了这一点,它成功了。感谢这是一个高超音速数据库,有一个名为JMS\u SUBSCRIPTION的表,其中的主题名称不同。这就是正在使用的主题。你的回答引导我找到了数据库,并研究了它的脚本。虽然我不得不删除重新制作的数据目录。
org.jboss.deployment.DeploymentException: Error during topic setup; - nested throwable: (org.jboss.mq.SpyJMSException: Cannot subscribe to this Destination: ; - nested throwable: (java.lang.NullPointerException))
.........
......
....
Caused by: org.jboss.mq.SpyJMSException: Cannot subscribe to this Destination: ;
- nested throwable: (java.lang.NullPointerException)
at org.jboss.mq.SpyJMSException.getAsJMSException(SpyJMSException.java:66)
at org.jboss.mq.SpyJMSException.rethrowAsJMSException(SpyJMSException.java:51)
at org.jboss.mq.Connection.addConsumer(Connection.java:835)
at org.jboss.mq.SpyConnectionConsumer.<init>(SpyConnectionConsumer.java:95)
at org.jboss.mq.SpyConnection.createDurableConnectionConsumer(SpyConnection.java:156)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerCreate(JMSContainerInvoker.java:789)
... 140 more Caused by: java.lang.NullPointerException
at org.jboss.mq.sm.AbstractStateManager.setDurableSubscription(AbstractStateManager.java:134)
at org.jboss.mq.server.JMSTopic.addSubscriber(JMSTopic.java:95)
at org.jboss.mq.server.ClientConsumer.addSubscription(ClientConsumer.java:133)
at org.jboss.mq.server.JMSDestinationManager.subscribe(JMSDestinationManager.java:596)