Ce produit contient des fichiers modèle qui prennent en charge les spécifications SCA (Service Component
Architecture). Ces exemples de fichiers SCA sont utilisables dans des applications de niveau métier. Les services SCA sont mis en forme dans des fichiers JAR (Java archive) que vous importez en tant qu'actifs dans le référentiel du produit et que vous ajoutez ensuite comme unités de composition dans des applications de niveau métier. Chaque exemple inclut des instructions de déploiement détaillées, fournies dans un
fichier readme.html.
Conditions préalables à l'utilisation
WebSphere Application
Server version 8.5
Important : Les exemples Oasis ont été testés
avec WebSphere Application Server
version 8.5. Tous les autres exemples ont été testés
avec WebSphere Application Server
version 8.0 et version 8.5.
Téléchargement des exemples
Téléchargez les fichiers des exemples SCA depuis un site
de téléchargement de produits :
- Choisissez l'une des techniques suivantes pour télécharger le
fichier SCA.zip vers un répertoire de votre poste de travail :
FTP
ou
HTTP. Vous pouvez créer le chemin de répertoire /samples/sca sur
votre poste de travail et y télécharger les fichiers d'exemples SCA.
- Dans la boîte de dialogue qui s'affiche, indiquez le répertoire cible
dans lequel enregistrer le fichier compressé et cliquez sur OK.
Les fichiers contenus dans
SCA.zip sont répartis dans la structure de répertoires suivante :
/CandyStore
/common
/HelloJee
/helloworld-ws-asynch
/helloworld-ws-asynch_Oasis
/installableApps
/installableApps_Oasis
/jms
/jms_Oasis
/jobbankejb
/jobbankejb_Oasis
/MultiService
/MultiService_Oasis
/MyBank
/MyBank_Oasis
readme.html
notices.txt
Avertissement : Le fichier readme.html contient
des informations sur l'installation et l'exécution de l'exemple.
Vous devez déployer les fichiers des exemples SCA en tant qu'actifs d'une application de
niveau métier sur un serveur ou un cluster Version 8.5 ou sur
une cible version 7.0 enrichie du Feature Pack for SCA. Le répertoire /installableApps contient
des archives prêtes à l'emploi, que vous pouvez déployer comme des actifs. Les autres répertoires
contiennent les fichiers source, les scripts et les instructions spécifiques à chaque exemple,
pour vous permettre de générer vous-même des archives déployables.
Description des modèles
- CandyStore (OSOA uniquement)
- Le fichier CandyStore.jar utilise la liaison par défaut, la liaison de service Web et la
liaison EJB, et montre l'utilisation du modèle récursif et des mécanismes d'authentification et d'autorisation sur la liaison par
défaut. L'exemple présente le développement d'applications SCA en utilisant l'approche ascendante (Java vers WSDL) et l'approche descendante (WSDL vers Java).
Vous pouvez déployer la version prête à l'emploi
du fichier CandyStore.jar dans le répertoire /installableApps ;
vous pouvez sinon générer votre propre version de fichier JAR déployable.
Pour une description des dix composites dans CandyStore
et des détails sur leur déploiement, référez-vous au fichier /CandyStore/documentation/readme.html.
- HelloJee (OSOA uniquement)
- Ce modèle montre comment utiliser les annotations SCA dans les composants Java EE (Java Platform, Enterprise
Edition) de manière que ces composants puissent consommer des services SCA. Les applications Java EE peuvent utiliser le modèle de programmation SCA avec peu ou pas de modification du code d'implémentation d'application. Le modèle utilise des définitions implementation.jee
pour activer des archives Java EE comme implémentations de composant SCA. Le modèle
comporte une archive Java EE sans artefact SCA et une archive Java EE
avec un fichier de définition composite qui définit un composite SCA et des composants. Les composants utilisent des définitions implementation.ejb et implementation.web.
Ils montrent comment exposer des services EJB comme services SCA et accéder à des valeurs injectées d'annotation de référence et de propriété dans des beans et des servlets session sans état.
Vous pouvez déployer les versions prêtes à l'emploi
des fichiers HelloJeeEar.ear, HelloJeeEnhancedEar.ear et
HelloJeeSca.jar dans le répertoire /installableApps ;
vous pouvez sinon générer vos propres versions déployables de ces fichiers.
Pour plus d'informations sur le déploiement, référez-vous
au fichier /HelloJee/documentation/readme.html ou à la rubrique
décrivant l'utilisation de modules et de composants Java EE existants en tant qu'implémentations
de SCA.
- helloworld-ws-asynch (helloworld-ws-asynch_Oasis)
- Cet exemple utilise des services Web et un service de traducteur asynchrone.
Il comprend trois archives déployables : le client helloworld-ws-client-asynch.war et
deux services Web, helloworld-ws-asynchclient.jar et helloworld-ws-asynch.jar.
Le client utilise un fichier JSP (Java ServerPages) pour obtenir un contexte de composite SCA et appeler le service
HelloWorldClient sur la liaison par défaut SCA. Le service du client appelle à son tour le service HelloWorld sur une
liaison de service Web. Une fois invoqué, le service HelloWorld émet un rappel (callback) à destination
du service du client. Le JSP du client attend durant 5 secondes que le rappel se termine, puis il affiche
ses résultats.
Vous pouvez déployer les versions prêtes à l'emploi des fichiers
helloworld-ws-asynch.jar, helloworld-ws-client-asynch.war et
helloworld-ws-asynchclient.jar dans le répertoire /installableApps ; vous
pouvez sinon générer vos propres versions déployables de ces fichiers.
Pour une description des fichiers JAR et des détails sur leur
déploiement, référez-vous au document /helloworld-ws-asynch/documentation/readme.html.
Pour obtenir des instructions détaillées sur le déploiement du fichier helloworld-ws-asynch.jar
dans une application de niveau métier, reportez-vous aux rubriques du Centre de documentation "Exemple : Création d'une application de niveau métier à l'aide
de la console" et "Exemple: Création d'une application de niveau métier à l'aide de scripts".
- JMS (JMS_Oasis)
- Les modèles JMS montrent comment appeler un service de composant SCA à l'aide d'un client JMS (Java Message Service). Trois modèles de liaison JMS sont fournis :
- TwoWay : fournit une méthode à deux sens qui renvoie une valeur.
- TwoWay-OneWay : fournit une méthode à deux sens qui appelle le service LoggingService et une méthode à un sens qui consigne le
message dans le fichier SystemOut du serveur.
- TwoWay-OneWay-Callback : fournit une méthode à un sens qui effectue un rappel du composant POJO HelloServiceComponent.
Les modèles de liaison JMS contiennent également un composant POJO et un client léger :
- HelloServiceComponent : composant POJO simple qui reçoit le message JMS via la liaison du service JMS, exécute la méthode du composant POJO et renvoie le résultat à l'appelant sous la forme d'un message de réponse.
- thinClient : client JMS non SCA, contenu dans le fichierjms-client.jar, qui appelle le service SCA
POJO HelloService en envoyant un message JMS au fournisseur de messagerie JMS.
Vous pouvez déployer les
versions prêtes à l'emploi des fichiers jms-callback-service.jar,
jms-twoway-oneway-service.jar et jms-twoway-service.jar dans le répertoire
/installableApps ; vous pouvez sinon générer vos propres versions déployables de ces fichiers.
Pour des détails sur la génération des artefacts des exemples JMS, la création des ressources JMS
associées aux exemples et le déploiement des exemples, consultez le document /jms/documentation/readme.html.
- JobbankTargetEJBApp (JobbankTargetEJBApp_Oasis)
- Cet exemple montre comment un client Java EE, JobbankClientApp.ear,
peut appeler un composant SCA, jobbankejb.jar, via une liaison de service EJB distant et aussi comment un composant avec une liaison de référence EJB peut appeler un EJB externe distant, qui est dans JobbankTargetEJBApp.ear. La liaison bean session sans état est une liaison de protocole permettant d'intégrer SCA à des services basés sur EJB. La prise en charge SCA est dans jobbankejb.jar.
Vous pouvez déployer les versions prêtes à l'emploi des fichiers JobbankClientApp.ear,
jobbankejb.jar et JobbankTargetEJBApp.ear dans le répertoire
/installableApps ; vous pouvez sinon générer vos propres versions déployables de ces fichiers.
Pour une description des fichiers et des détails sur leur déploiement, référez-vous au document
/jobbankejb/documentation/readme.html.
- MultiService (MultiService_Oasis)
- Cet exemple présente une composition de service à l'aide de services existants.
L'exemple MultiService se connecte à plusieurs exemples existants :
- Stock Quote, WebServicesSamples.ear
- HelloWorldAsync, helloworld-ws-asynch.jar
- JobbankTargetEJBApp, JobbankTargetEJBApp.ear
- EJB Counter, EJB3CounterSample.ear
Vous pouvez déployer les versions prêtes à
l'emploi des fichiers Multiservice.jar, MultiService.war,
helloworld-ws-asynch.jar et JobbankTargetEJBApp.ear dans le répertoire
/installableApps ; vous pouvez sinon générer vos propres versions déployables de ces fichiers.
Vous pouvez déployer les versions prêtes à l'emploi des fichiers WebServicesSamples.ear et
EJB3CounterSample.ear dans le répertoire /installableApps.
Une option de l'exemple
permet d'implémenter le service SCA en tant qu'application OSGi
avec des liaisons de données SDO.
Pour plus d'informations sur le déploiement, reportez-vous à /MultiService/documentation/readme.html.
- MyBank (MyBank_Oasis)
- Cet exemple montre comment créer une application SCA qui utilise JAXB selon une approche descendante. Utilisez AccountService.wsdl pour générer des classes JAXB qui fournissent une liaison de données entre des fichiers XML et Java. Utilisez ensuite une référence sur le fichier WAR côté client pour établir un lien au service Account via la liaison de
service Web.
Une option permet également d'implémenter le service SCA en tant qu'application OSGi avec les liaisons de données SDO.
Vous pouvez déployer les versions prêtes à l'emploi des fichiers
mybank-accountservice.jar et mybank-client.war dans le
répertoire /installableApps ; vous pouvez sinon générer vos propres versions déployables de ces
fichiers.
Pour plus d'informations sur le déploiement, reportez-vous à
/MyBank/documentation/readme.html.