2010-09-07 4 views
4

J'ai une question générique sur l'utilisation de JMS fourni par JBoss 5.1.Quelle JMS ConnectionFactory doit être utilisée sur JBoss 5.1?

Je déploie mon application Java EE (implémentée avec Spring Framework) sur JBoss 5.1. L'application utilise Spring pour consommer des messages à partir des files d'attente JMS (DefaultMessageListenerContainer) et envoie également des messages à JMS destinatiosn en utilisant JmsTemplate de Spring. Ce qui est important ici, c'est que l'application utilise 2PC (JTA et XA). De plus, il n'y a pas de MDB dans l'application.

Regarder la configuration JBoss 5.1 il y a plusieurs ConnectionFactories disponibles dans JNDI:

  • java:/JmsXA
  • java:/ConnectionFactory
  • java:/XAConnectionFactory
  • java:/ClusteredConnectionFactory
  • java:/ClusteredXAConnectionFactory
  • ConnectionFactory
  • XAConnectionFactory
  • ClusteredConnectionFactory
  • ClusteredXAConnectionFactory

Je me demandais qui je devrais utiliser dans ma configuration. J'ai toujours utilisé le java:/JmsXA, mais je ne suis pas sûr que ce soit un meilleur choix, surtout pour les environnements en cluster.

Quelqu'un peut-il faire la lumière sur le sujet, s'il vous plaît?

Répondre

1

Les plus intéressants sont deploy/messaging/jms-ds.xml

  • java:/JmsXA - "utiliser pour obtenir JMS transigés dans les haricots"
  • java:/XAConnectionFactory - "Actuellement pointant vers un ConnectionFactory non-cluster"

Looks pour moi, comme java:/JmsXA est certainement celui à utiliser.

+0

Qu'en est-il de deploy/messaging/connection-factories-service.xml? Il y a le reste des usines de la liste. Et il y en a un commenté comme "Une fabrique de connexions en cluster qui prend en charge le basculement automatique et l'équilibrage de charge des connexions créées". N'est-ce pas approprié? –

+0

@pregzt: Non, car ils ne sont pas compatibles XA. – skaffman

+0

qu'en est-il des usines dans deploy/messaging/connection-factories-service.xml appelées ClusteredXAConnectionFactory (ou java:/ClusteredXAConnectionFactory)? Le XA dans le nom impliquerait qu'ils sont compatibles XA. Le commentaire indique également: "Une fabrique de connexions en cluster qui prend en charge le basculement automatique et l'équilibrage de charge des connexions créées Cette fabrique ne peut pas être utilisée par les MDB." Étant donné que l'OP n'utilise pas de MDB, je dirais que c'est l'usine préférée, surtout si on utilise le clustering. – mluisbrown

Questions connexes