集群 JBoss 消息传递,XA 恢复:JMSSecurityException

集群 JBoss 消息传递,XA 恢复:JMSSecurityException

我正在尝试在基本的非集群默认服务器配置上设置带有 XA-recovery 的集群 jboss-messaging(我们仅有的想要集群消息传递,其余的是无状态的,只有故障转移)在 JBoss EAP 4.3(CP04)上。

当我添加 XA-recovery 时,日志中出现以下错误:

09:05:07,558 ERROR [ExceptionUtil] ConnectionFactoryEndpoint[jboss.messaging.connectionfactory:service=ConnectionFactory] createFailoverConnectionDelegate [s-ar10uuuf-1-k1eztuuf-z44sla-t6avs4]
javax.jms.JMSSecurityException: User null is NOT authenticated

[... stacktrace removed for readablity ...]

09:05:07,559 ERROR [MessagingXAResourceWrapper] ********************************Failed to connect to server
javax.jms.JMSSecurityException: User null is NOT authenticated

看起来我缺少一些安全配置 - 但我不知道在哪里。

我已经仔细检查了我的配置是否有错误,并使用了以下文档:

http://www.redhat.com/docs/manuals/jboss/jboss-eap-4.3/doc/messaging/JBoss_Messaging_User_Guide/html/recovery.html

相同的配置在生产配置中运行良好(更新:不再如此,见下文)

有人做过这个吗?知道我做错了什么吗?

更新:

错误取决于我在消息配置 (*-presistence-service.xml) 中使用哪个数据源 (DefaultDS 与 MyOwnDS)。我尝试过以下场景:

  1. DefaultDS/HSQLDB:有效(当然这是标准配置...但是谁想在生产中使用此配置?)
  2. DefaultDS/MySQL:有效(这是一个可接受的解决方法)
  3. MyOwnDS/MySQL:不起作用

消息传递不可能依赖于名为“DefaultDS”的数据源,因此我猜想当我使用自己的 DS 时,与 DefaultDS 相关的一些配置会丢失。但我不知道是什么...

login-config.xml 中有一个条目(HsqlDbRealm)使用“DefaultDS”,但它看起来不像被消息传递所使用?

我错过了什么?

答案1

用于身份验证的数据源在 messages-jboss-beans.xml 中指定。

相关内容