Accès aux exemples
Le produit contient des exemples de tâches d'application d'entreprise courantes. La plupart des exemples fournissent également des instructions pour les exemples de déploiement de codage.
Déploiement des exemples à l'aide de la ligne de commande
- Connectez-vous à votre système hôte à l'aide de données d'identification valides.
- Accédez au répertoire app_server_root/bin.
Accédez au répertoire /opt/IBM/WebSphere/AppServer/bin/.
- Exécutez wsadmin pour installer l'application. Par exemple :
./wsadmin.sh -profileName AppSrv01 -lang jython -c "AdminApp.install('/opt/sample.javaee7.websocket.war', '[ -MapWebModToVH [[ .* .* default_host ]] -appname sample.javaee7.websocket]')"
Déploiement des exemples à l'aide de la console Integrated Solutions Console
- Ouvrez votre navigateur préféré et accédez à la console Integrated Solutions Console. Par exemple : http://hostname:9060/ibm/console/
- Connectez-vous à l'aide de votre nom d'utilisateur et de votre mot de passe.
- Sélectionnez .
- Sélectionnez le lien Nouvelle application d'entreprise.
- Utilisez l'option Système de fichiers local, cliquez sur Parcourir, puis sélectionnez le fichier que vous avez téléchargé de GitHub.
- Cliquez sur Suivant pour exécuter l'assistant avec les options par défaut jusqu'à ce que le bouton Terminer s'affiche.
- Lorsque la section de confirmation des modifications s'affiche, cliquez sur Enregistrer.
- Cliquez sur .
- Sélectionnez la case à cocher en regard de l'exemple d'application, puis cliquez sur Démarrer.
- Utilisez votre navigateur pour accéder à la page d'accueil. Par exemple :
http://hostname:9080/sample_name/
Exemples disponibles
Vous pouvez accéder aux exemples pré-déployés suivants dans cette édition. Le code source de ces exemples d'application est disponible sur le site GitHub.
- sample.javaee7.websocket
- Ces exemples de socket Web disponibles sur le site GitHub expliquent comment configurer des noeuds finaux WebSocket à l'aide d'annotations ou d'un programme. Ils proposent des exercices visant à ouvrir, lire et écrire des données depuis/vers et fermer une connexion WebSocket. Ils expliquent également comment utiliser des codeurs, des décodeurs, l'annotation PathParam et le traitement de message Pong.
- sample.javaee7.el30
- Cette application disponible sur le site GitHub explique comment utiliser certaines des nouvelles fonctions EL 3.0 (Expression Language). Les exemples fournis illustrent l'utilisation d'expressions lambda, de concaténation et de nouveaux opérateurs. Un exemple simple de servlet autonome illustrant l'utilisation de EL sans JavaServer Pages (JSP) est également fourni.
- sample.javaee7.servlet.nonblocking
Cette application disponible sur GitHub explique comment utiliser des E-S non bloquantes à l'aide des nouvelles API qui ont été ajoutées à ServletInputStream et à ServletOutputStream. L'exemple inclut l'utilisation des API d'interface ReadListener et WriteListener.
- sample.javaee7.sleepybatchlet
- L'exemple de batchlet mis en veille disponible sur le site GitHub utilise l'implémentation de référence par lots JSR 352 dans le produit. L'application est composée d'un batchlet et d'un travail par lots mis en veille pendant un nombre de secondes défini par l'utilisateur. Chaque seconde, le batchlet envoie des données sur la console pour indiquer qu'il travaille. L'application par lots est enveloppée d'une page Web conçue pour faciliter et rendre plus intuitive la gestion des exécutions par lots.Dans le cadre de cet exemple, vous devez créer des ressources avant de déployer l'application. Pour créer les ressources requises, procédez comme suit :
- Vérifiez qu'une instance Derby JDBC Provider existe. Dans la console d'administration, cliquez sur .
- Si ce fournisseur n'existe pas, créez-en un avec un type d'implémentation Source de données de pool de connexions et pointez vers le fichier Derby .jar. Par exemple, ${WAS_INSTALL_ROOT}/derby/lib
- Assurez-vous qu'une instance Source de données par défaut est configurée. Cliquez sur .
- (Console d'administration) Si cette source de données n'existe pas, créez-en une avec le nom Source de données par défaut et le nom JNDI DefaultDatasource pointant vers le fournisseur JDBC Derby et la base de données "${WAS_INSTALL_ROOT}/derby/DefaultDB".
- (Ligne de commande) Etablissez une connexion à distance entre votre machine virtuelle et l'environnement WebSphere via SSH.
Accédez à ${WAS_INSTALL_ROOT}/derby/bin/embedded/. Exécutez ./ij.sh. A l'invite ij>, entrez la commande suivante :
La base de données Derby par défaut est créée dans le répertoire suivant : ${WAS_INSTALL_ROOT}/derby/DefaultDBconnect 'jdbc:derby:DefaultDB;create=true';
- Ajoutez des arguments JVM au serveur qui exécute l'exemple de lot. Cliquez sur
- com.ibm.ws.batch.DB_SCHEMA
- Valeur : BATCH
- com.ibm.ws.batch.JNDI_NAME
- Valeur : DefaultDatasource
. Ajoutez les propriétés personnalisées suivantes : - Après avoir configuré l'environnement, installez l'application à l'aide des valeurs par défaut fournies.
- Une fois l'application démarrée, ouvrez le fichier SystemOut.log dans /.../IBM/WebSphere/Profiles/DefaultAppSrv01/logs/server1 et recherchez l'URL suivante : http://hostname:9080/sample.javaee7.sleepybatchlet/.
- Vérifiez qu'une instance Derby JDBC Provider existe. Dans la console d'administration, cliquez sur .
- sample.javaee7.concurrency
- Cette application disponible sur le site GitHub explique comment utiliser des programmes d'exécution gérés, des programmes d'exécution planifiés gérés et un service contextuel pour effectuer plusieurs tâches en parallèle dans une seule application.
- sample.javaee7.jta
- Cette application disponible sur le site GitHub explique comment utiliser des annotations @Transactional pour contrôler de manière déclarative des limites de transaction, ainsi que l'annotation @TransactionScoped pour définir une portée de type transaction pour un cycle de vie de bean.
- sample.javaee7.jsonp
- JSONP suit la spécification JSR 353. L'application disponible sur le site GitHub est composée de cinq servlets qui procèdent à l'analyse syntaxique et à l'affichage de données JSON en fonction de différentes implémentations pour obtenir le code JSON. Une page d'interface utilisateur Web facilite et rend plus intuitive l'utilisation de fonctions JSON-P. Les différents tests fournis dans l'exemple JSONP sont basés sur des objets JSON spéciaux qui facilitent les fonctions JSON, y compris la construction de structures de données complexes prêtes à être converties au format JSON.
- sample.javaee7.jms
- Cet exemple JMS disponible sur le site GitHub utilise l'API simplifiée de JMS 2.0. L'exemple contient deux servlets permettant d'exécuter une messagerie de type point à point et publication/abonnement. Le servlet JMS fournit un exemple d'implémentation permettant d'envoyer ou de recevoir des messages vers/depuis une file d'attente, de procéder à la publication de messages d'une rubrique et de s'abonner pour recevoir ces derniers.Vous devez créer quelques ressources avant de déployer l'application. Vous pouvez créer des ressources à l'aide de scripts de configuration publiés avec l'exemple.
- Exécutez le script createSIBusResources.py à partir du répertoire app_server_root/bin pour créer les ressources requises. Indiquez les valeurs cell_name, node_name et server_name, ainsi que le chemin d'accès au fichier sample.javaee7.jms.war dans la commande :
./wsadmin.sh -f createSIBusResources.py cell_name node_name server_name path_to_file/sample.javaee7.jms.war
- Si la sécurité est activée dans le serveur, exécutez le script addAuthAlias.py à partir du répertoire app_server_root/bin. Indiquez votre nom d'utilisateur et votre mot de passe dans la commande :
./wsadmin.sh -f addAuthAlias.py user_name password
- Exécutez le script createSIBusResources.py à partir du répertoire app_server_root/bin pour créer les ressources requises. Indiquez les valeurs cell_name, node_name et server_name, ainsi que le chemin d'accès au fichier sample.javaee7.jms.war dans la commande :
Téléchargement des exemples de code
Vous pouvez télécharger le code source pour les exemples à partir du référentiel GitHub.
Limitations des exemples
Les exemples sont fournis à titre de démonstration uniquement.
Le code fourni n'est pas destiné à être exécuté dans un environnement de production sécurisé. Les exemples prennent en charge Java 2 Security. Par conséquent, ils implémentent le contrôle d'accès à base de règles qui vérifie les autorisations sur les ressources système protégées, telles que les E-S de fichier.
Les exemples prennent également en charge la sécurité administrative.
- La plupart des exemples se connectent à une base de données Apache Derby en utilisant l'infrastructure intégrée d'Apache Derby. La structure intégrée d'Apache Derby est limitée en ce sens qu'une seule machine virtuelle Java (JVM) peut accéder à une instance de base de données. Par conséquent, dans un environnement de serveurs d'applications en cluster, le second serveur dans le noeud ne démarre pas les exemples d'applications, car le premier serveur (JVM) a déjà une connexion à cette instance de base de données.
Utilisez la structure de serveur réseau Apache Derby pour les applications pour lesquelles plusieurs machines virtuelles Java doivent accéder à la même instance Apache Derby.
Autres exemples
- Exemples sur developerWorks
- D'autres exemples de produit sont disponibles sur le site WASdev.
- Exemples dans les tutoriels
- La plupart des tutoriels du produit reposent sur un exemple de code. Pour trouver des tutoriels qui illustrent des technologies particulières, parcourez les liens fournis dans Tutoriels.
- Exemples dans la documentation du produit
- La documentation du produit contient de nombreux fragments de code et exemples. Pour trouver ces exemples facilement, reportez-vous aux exemples pour développeur dans la section Référence d'IBM Knowledge Center pour l'édition du produit que vous utilisez.
IBM Telephone Directory
L'application de gestion IBM Telephone Directory est livrée séparément du produit. Pour plus d'informations sur l'obtention et l'utilisation de l'application IBM Telephone Directory, voir IBM Telephone Directory V5.2 dans la rubrique sur les services e-business et Web dans le centre de documentation du produit IBM i.