Кластерный обмен сообщениями JBoss, восстановление XA: исключение JMSSecurityException
Я пытаюсь настроить кластеризованный обмен сообщениями jboss с XA-recovery на базовой некластеризованной конфигурации сервера по умолчанию (мы хотим только кластеризованный обмен сообщениями, остальное без сохранения состояния только с отказоустойчивостью) на 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
Тот же конфиг работает как прелесть в производственном конфиге (обновление: больше не верно, см. Ниже)
Кто-нибудь делал это раньше? Есть идеи, что я делаю не так?
Обновить:
Ошибка зависит от того, какой источник данных я использую (DefaultDS против MyOwnDS) в конфигурации обмена сообщениями (*-presistence-service.xml). Я пробовал следующие сценарии:
- DefaultDS / HSQLDB: работает (конечно, это стандартный конфиг... но кто хочет использовать этот конфиг в производстве?)
- DefaultDS / MySQL: работает (это приемлемое решение)
- MyOwnDS / MySQL: НЕ работает
Не может быть так, что обмен сообщениями зависит от источника данных с именем "DefaultDS", поэтому я предполагаю, что есть некоторая конфигурация, связанная с DefaultDS, которая пропадает при использовании моего собственного DS. Но я не могу понять, что...
Есть запись (HsqlDbRealm) в login-config.xml, которая использует DefaultDS, но не похоже, что она используется для обмена сообщениями?
Что мне не хватает?
1 ответ
Источник данных, используемый для аутентификации, указан в messaging-jboss-beans.xml.