Un module est une unité de déploiement qui détermine les artefacts fournis dans un fichier EAR (Enterprise Archive ). Les composants d'un module sont situés au même endroit pour des raisons de performances et peuvent transmettre leurs données par référence. Un module peut être considéré comme un mécanisme de mesure de la portée, c'est-à-dire qu'il définit une limite organisationnelle pour les artefacts.
Un module est un fichier composite de composants de service, d'importations et d'exportations. Les composants de service, les importations et les exportations résident dans le même projet et le même dossier racine, qui contiennent également les connexions reliant les composants ainsi que les liaisons nécessaires pour les importations et les exportations. Un module peut également inclure les implémentations et interfaces référencées par ses composants, importations et exportations, ou celles-ci peuvent être placées dans d'autres projets, tels qu'un projet de bibliothèque.
Il existe deux types de modules. Premièrement, un module désigné module (parfois appelé module d'intégration métier) qui contient de nombreux types de composants, souvent utilisés pour prendre en charge un processus métier. Deuxièmement, un module appelé module de médiation, qui contient au maximum un composant, un composant de flux de médiations ainsi que zéro ou plusieurs composants Java étendant le composant de flux de médiations.
Pourquoi existe-t-il deux types de modules ? Le premier type de module est principalement conçu pour les processus métier. Un module de médiation est semblable à une passerelle vers des services externes existants, qui est couramment utilisée dans les architectures Enterprise Service Bus. Ces exportations ou services externes sont utilisés au sein d'un module de médiation par des importations ou des fournisseurs de services. Grâce à la dissociation des demandeurs de services client et des fournisseurs de services par un flux de médiations, la flexibilité et la souplesse de vos applications sont améliorées, ce qui correspond à un objectif de l'architecture orientée service. Par exemple, votre flux de médiations peut consigner des messages entrants, acheminer des messages vers un service spécifique déterminé lors de l'exécution ou transformer des données pour qu'elles puissent être transmises à un autre service. Ces fonctions peuvent être ajoutées et modifiées au fil du temps sans modification des services du demandeur ou du fournisseur.
Un module entraîne le test d'une application de service et son déploiement sur WebSphere Process Server. Un module de médiation entraîne le test d'une application de service et son déploiement sur WebSphere Process Server ou WebSphere Enterprise Service Bus. Les deux types de modules prennent en charge les importations et les exportations.
Les implémentations, les interfaces, les objets métier, les mappes d'objets métier, les rôles, les relations et d'autres artefacts doivent souvent être partagés par des modules. Une bibliothèque est un projet utilisé pour stocker ces ressources partagées.
Dans le diagramme ci-dessous, le module contient une exportation, deux importations et un composant de service qui les utilise. La connexion présentée relie les interfaces et les références.