Auf JBoss 5.1.0 habe ich Datasource (PostgreSQL 8.3.11) konfiguriert mit * -ds.xml (Standard jboss DS). Es verwendet XADataSource (PGXADataSource). Ich habe auch ActiveMQ-Broker (derzeit läuft es als in-VM, unter JBoss, aber es wird auf separaten Server letzteren sein).Konfigurieren des ActiveMQ JCA-Connectors in JBoss für die Verwendung von XA-Verbindungen?
Ich möchte ActiveMQ Connection Factory und Datasource zur Teilnahme an XA-Transaktionen machen. Zum Beispiel möchte ich den DB-Eintrag aktualisieren und eine JMS-Nachricht als UOW senden. Du hast die Idee.
Ich habe PGXADataSource in my-pg-ds.xml konfiguriert und es funktioniert (ich kann die Ausführung bis zu PGXAConnection's start method verfolgen). Ich habe versucht, ActiveMQXAConnectionFactory direkt im Frühling zu konfigurieren (ich benutze Spring 3.0.2.RELEASE), aber das funktioniert nicht, weil in diesem Fall Spring transaction manager (Ich verwende Annotation, um Spring konfigurieren JtaTransactionManager, die einfach alle Arbeit an delegiert Jboss transaction manager) führt XAResource für gegebene ActiveMQXAConnection nicht ein. Immer wenn ich versuche, eine Nachricht zu senden, erhalte ich eine Ausnahme JMSException, die besagt, dass die XAResource der Sitzung nicht in einer verteilten Transaktion eingetragen wurde. geworfen von ActiveMQXASession. Da
dass, funktionierte nicht ich JCA Konfiguration von ActiveMQ ConnectionFactory- (basierend auf this Dokument) eingeschaltet haben und es funktioniert für regelmäßige , aber ich verstehe nicht, wie kann ich sie konfigurieren XAConnectionFactory verwenden. Es scheint wie Resource Adapter hat einfach nicht ordnungsgemäße ManagedConnectionFactory, ManagedConnection usw. Implementierungen für XA Connection Factory.
Fehle ich etwas oder habe ich keine andere Wahl, als XA-Wrapper für den Ressourcenadapter zu schreiben?