Aller au contenu
  • Nos offres
  • Blog
  • Contact
  • Carrières
Menu
  • Nos offres
  • Blog
  • Contact
  • Carrières
Inscrivez-vous à la newsletter

Inscrivez-vous à la newsletter

Abonnez-vous maintenant et nous vous tiendrons au courant.
Nous respectons votre vie privée. Vous pouvez vous désabonner à tout moment.

Blog

  • Accueil
  • Actualités
  • Cloud
  • Infrastructure
  • Données / Sécurité
  • Intégration
  • Dev / DevOps
  • SAM / FinOps
Menu
  • Accueil
  • Actualités
  • Cloud
  • Infrastructure
  • Données / Sécurité
  • Intégration
  • Dev / DevOps
  • SAM / FinOps
  • le 02/04/2013
  • Julien Riviere
  • Développement, SOA & Urbanisation

Utiliser Websphere MQ en JMS avec OSB

Partager sur linkedin
Partager sur twitter
Partager sur facebook

Utiliser un bus de services tel qu’ Oracle Service Bus vous permet d’intégrer entre elles des briques logicielles hétérogènes: bases de données, SAP, site web, etc. Cette intégration est permise grâce aux nombreux standards supportés par le bus et ses connecteurs: web services, JMS, JDBC, etc.
Ce billet vise à mettre en avant les capacités d’intégration d’Oracle Service Bus au niveau JMS. Notamment, nous allons voir quel mécanisme peut nous permettre d’utiliser des files de message Websphere MQ avec OSB.

Voici les étapes principales à suivre:

  • Télécharger et installer le client Websphere MQ
  • Renseigner l’annuaire JNDI du client Websphere MQ avec les files de message et les fabriques de connexion du serveur MQ à utiliser
  • Configurer un Foreign Server sur le weblogic hébergeant Oracle Service Bus et le faire pointer sur l’annuaire JNDI du client Websphere MQ
  • Mapper les ressources de l’annuaire du client Websphere MQ dans l’annuaire JNDI du weblogic hébergeant Oracle Service Bus grâce au Foreign Server

Installation du client Websphere MQ (ici version 6 sur Linux):

  • Télécharger l’archive d’installation ici
  • Se connecter en root sur les serveurs OSB
  • Décompresser l’archive d’installation
  • Lancer le script mqlicense.sh
  • Installer les RPM (le client se trouve alors dans /opt/mqm)
  • Créer un répertoire /opt/mqm/jndidir ayant comme propriétaire l’utilisateur mqm
  • Modifier la partie INITIAL_CONTTEXT_FACTORY du fichier JMSAdmin.config:
    #INITIAL_CONTEXT_FACTORY=com.sun.jndi.ldap.LdapCtxFactory
    INITIAL_CONTEXT_FACTORY=com.sun.jndi.fscontext.RefFSContextFactory
    #INITIAL_CONTEXT_FACTORY=com.ibm.ejs.ns.jndi.CNInitialContextFactory
    #INITIAL_CONTEXT_FACTORY=com.ibm.websphere.naming.WsnInitialContextFactory
  • Modifier la partie PROVIDER du fichier JMSAdmin.config:
    #PROVIDER_URL=ldap://polaris/o=ibm,c=us
    PROVIDER_URL=file:/opt/mqm/jndidir
    #PROVIDER_URL=iiop://localhost/

Renseigner l’annuaire JNDI du client Websphere MQ:

  • Toujours en root, se positionner dans le répertoire /opt/mqm/java/bin
    cd /opt/mqm/java/bin
  • Initialiser les variables d’environnement
    . ./setjmsenv
  • Lancer le prompt du client MQ
    ./JMSAdmin
  • Définir une fabrique de connexion par Queue Manager MQ
    def qcf(MYMQCF) qmanager(myqmanager) hostname(myhostname) port(myport) transport(CLIENT)
  • Référencer chaque file de messages du serveur MQ
    def q(MYQ) queue(MYQ) qmanager(myqmanager) persistence(PERS)

Configurer un Foreign Server sur le weblogic hébergeant OSB

  • Ouvrir une session d’édition dans la console d’administration OSB
  • Aller dans la section Services/Messaging/JMSModules
  • Créer un nouveau module JMS ou utiliser un existant
  • Créer un Foreign Serveur dans ce module avec les valeurs suivantes
    JNDI Initial Context Factory: com.sun.jndi.fscontext.RefFSContextFactory
    JNDI Connection URL : file:/opt/mqm/jndidir

Mapper les ressources de l’annuaire du client Websphere MQ dans l’annuaire JNDI du weblogic hébergeant OSB:

  • Créer autant de Foreign Connection Factory que de fabrique de connexion définie dans l’annuaire du client MQ
  • Créer autant de Foreign Destination que de file de messages définie dans l’annuaire du client MQ

Vous êtes désormais prêt à utiliser le transport JMS d’Oracle Service Bus pour lire et écrire dans vos files de message MQ en toute transparence 🙂 Ce mécanisme nécessite donc un peu configuration côté serveur mais il permet de s’affranchir complètement de la technologie utilisée.
Nous aborderons d’autres mécanismes d’intégration proposés par Oracle Service Bus dans de prochains billets 😉
A bientôt!

Julien Riviere
Julien Riviere
Voir tous ses articles

2 réflexions sur “Utiliser Websphere MQ en JMS avec OSB”

  1. khalil
    02/06/2015 à 14:35

    s’il vous plait
    je veux du code java pour creer une queue connexion factory de type point a point avec websphere MQ
    MERCI pour votre aide

    Répondre
  2. laurentdereac
    29/04/2013 à 17:35

    Pour en savoir plus sur Oracle Service Bus, vous pouvez suivre le cours Oracle Service Bus 11g: Design & Integrate Services dont le descriptif est accessible sur ce lien : http://www.easyteam.fr/formation-oracle/Catalogue/oracle-service-bus-11g-design-integrate-services-D68256

    Répondre

Laisser un commentaire Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Articles récents
  • Azure Database pour PostgreSQL [PaaS]
  • Azure Logic Apps : l’outil d’intégration Cloud de Microsoft
  • Purge automatique des archivelogs en PL/SQL
  • ASM et l’importance du usable_file_mb
  • Préparer un Windows Server 2003 pour une migration sur Azure

Mentions légales & Politique de confidentialité

En poursuivant votre navigation, vous acceptez l'utilisation de cookies tiers destinés à réaliser des statistiques de visites et de suivi. Accepter Refuser Personnaliser En savoir plus
Politique de confidentialité et cookies

Politique de confidentialité

Les informations collectées au travers de nos cookies sont exploitées à des fins statistiques (Google Analytics).
Google Analytics
Enregistrer & appliquer

8 JUIN 2022 A PARIS | 8H30 - 18H30

TECH FOR CLIMATE ?

Opportunités et limites de la technologie pour faire face au défi climatique

Programme & Inscriptions

Un évènement imaginé avec 🖤 par Constellation