Modernisation des applications Java
Vous pouvez moderniser vos applications Java d'entreprise, y compris les applications traditionnelles WebSphere® Application Server , vers Liberty. Pour moderniser une application, vous devez d'abord télécharger un plan de migration ou construire et analyser votre application, puis résoudre les problèmes liés à votre application.
À partir de la version 1.1, vous pouvez utiliser Application Modernization Accelerator Developer Tools avec des applications construites avec des outils non-Maven, mais avec des limitations. Pour plus d'informations, voir Applications construites avec des outils de construction non-Maven.
Avant de commencer
- Configurez votre environnement Java d'entreprise.
- Installez le plug-in Visual Studio Code extension, le Eclipse IDE plug-in ou le IntelliJ IDEA IDE plug-in.
Complétez soit les étapes pour télécharger votre plan de migration d'application, soit les étapes pour analyser votre application. Une fois que vous avez terminé une série d'étapes, vous pouvez résoudre les problèmes liés à la migration. Les étapes pour résoudre les problèmes sont les mêmes pour les étapes du plan de migration et l'analyse de l'application. Une fois les problèmes résolus, vous disposez d'une application modernisée.
Si vous rencontrez un problème lié à Application Modernization Accelerator Developer Tools, consultez la page Dépannage.
Temps nécessaire à l'analyse de votre code
Le temps nécessaire à l'analyse de votre demande varie. Les horaires suivants sont typiques.
| Durée | Détails de l'application |
|---|---|
| De quelques secondes à quelques minutes | Moins de 100 classes |
| 2 à 10 minutes | 20 000 à 50 000 lignes de code |
| 10 minutes ou plus | 300 000 lignes de code |
Lorsque Application Modernization Accelerator Developer Tools analyse votre application, il exclut par défaut certains paquets tiers de l'analyse de code. Pour plus d'informations, consultez la section Paquets tiers exclus de l'analyse des applications.
Utiliser un plan de migration pour moderniser votre application
Les étapes suivantes supposent que vous utilisez IBM Application Modernization Accelerator pour générer un plan de migration. Le plan de migration contient une liste de problèmes de modernisation qui doivent être résolus. Il contient également des informations de configuration générées automatiquement pour permettre à l'application de fonctionner correctement sur Liberty.
- Si vous avez déjà téléchargé et analysé un plan de migration pour votre projet, le téléchargement d'un nouveau plan de migration écrase l'analyse existante.
- Avant de moderniser votre application, procédez à une compilation complète de votre application afin de vous assurer que vous partez d'une bonne version connue de l'application. Cette compilation permet également de s'assurer que les fichiers de classe sont à jour avec le code source le plus récent. Ils doivent être à jour avant que vous n'exécutiez des automatismes qui ajoutent des modifications pour les mises à niveau de la version Java .
Si vous annulez les modifications apportées à votre code, vous devez cliquer sur Retour pour télécharger/analyser et effectuer une analyse complète si vous souhaitez moderniser à nouveau votre application.
- Dans votre IDE, cliquez avec le bouton droit de la souris sur n'importe quel élément de la hiérarchie dans le répertoire de l'application que vous souhaitez moderniser, cliquez sur Modernize Java Applicationspuis cliquez sur Moderniser à Liberty.
- Sur la page Moderniser <nom de votre application>, téléchargez le plan de migration.
L'IDE analyse votre dossier de projet, recueille des informations sur votre application, puis télécharge le plan de migration généré par Application Modernization Accelerator .
- Cliquez sur Télécharger le plan de migration.
- Sélectionnez le plan d'application du fichier d'archive dans la liste et cliquez sur Ouvrir.
Lorsque le processus de téléchargement du plan de migration est terminé, la page Moderniser <nom de l'application> affiche les fichiers de configuration suivants qui se trouvent dans le plan :
- server.xml est le fichier de configuration de Liberty et est nécessaire pour démarrer votre application.
- Containerfile n'est nécessaire que pour construire une image de conteneur pour votre application Liberty .
Sélectionnez les fichiers à ajouter à votre projet, puis cliquez sur Continuer.
- (Obligatoire) Sélectionnez le fichier server.xml .
- (Facultatif) Sélectionnez le fichier Containerfile uniquement si vous créez une image de conteneur pour votre application Liberty .
Lorsque le téléchargement du plan de migration est terminé, les problèmes à résoudre ou à réviser s'affichent.
Si l'analyse détecte des services JAX-RPC dans votre application, suivez les instructions à l'écran pour migrer les services JAX-RPC vers les services JAX-WS .
Corriger les problèmes liés à l'application.
En fonction des problèmes à résoudre, la capacité à les résoudre peut être automatisée ou autogérée. Les questions figurant dans l'onglet Informations complémentaires ne nécessitent pas de modification du code, mais il se peut que vous deviez les vérifier ou les tester et procéder à une modification du code si vous le souhaitez.
Analyser votre application pour la moderniser
Les étapes suivantes partent du principe que vous analysez votre application au lieu d'utiliser un plan de migration Application Modernization Accelerator pour moderniser votre application. L'analyse vous fournit une liste de problèmes à résoudre et une configuration de serveur limitée dans le fichier server.xml . Le fichier server.xml contient une liste des fonctionnalités utilisées par votre application, mais il ne contient pas d'autres informations de configuration telles que les connexions à la base de données ou les configurations JMS.
Si vous annulez les modifications apportées à votre code, vous devez cliquer sur Retour pour télécharger/analyser et effectuer une analyse complète si vous souhaitez moderniser à nouveau votre application.
Dans votre IDE, faites un clic droit sur le répertoire que vous souhaitez moderniser, cliquez sur Modernize Java Applications, puis sur Moderniser vers Liberty.
Sur la page Moderniser <nom de l'application>, développez l' option Analyser l'application et cliquez sur Démarrer l'analyse.
Sélectionnez les paramètres d'analyse, qui définissent les règles par rapport auxquelles le serveur d'application est analysé.
Sélectionnez la source du serveur d'application et la cible du serveur d'application.
Il est possible de modifier la source Java SE, qui s'affiche automatiquement avec une valeur recommandée.
La valeur recommandée est basée sur la version de Java SE que Application Modernization Accelerator Developer Tools recommande pour la source du serveur d'application. Votre serveur d'application utilise peut-être une version de Java SE différente de celle qui est recommandée. Si c'est le cas, modifiez la source Java SE pour obtenir la version utilisée par votre serveur d'application.
Par exemple, Application Modernization Accelerator Developer Tools recommande Java SE 8 pour WebSphere Application Server V8.5.5 même si votre serveur d'applications utilise une version antérieure de Java SE.
Important : la version minimale supportée par Java est Java 5.Sélectionnez la cible Java SE.
Construire l'application et l'analyser.
L'analyse de l'application est effectuée sur le binaire de l'application. L'application doit être construite avant le début de l'analyse.
- Pour les constructions Maven, vous pouvez construire l'application manuellement ou automatiquement.
Cliquez sur Analyser après avoir construit manuellement l'application ou sur Construire et analyser pour construire et analyser automatiquement l'application.
Après la construction et l'analyse de votre application, les problèmes à résoudre ou à revoir sont affichés.
Lorsque vous cliquez sur Construire et analyser, l'application est construite dans sa version source actuelle Java , de sorte qu'elle peut être analysée pour détecter les problèmes de mise à niveau Java . Veillez à configurer l'IDE avec le kit de développement Java de la version source Java , afin que l'IDE puisse construire l'application avec succès.
- Pour les constructions qui n'utilisent pas Maven, construisez manuellement l'application, sélectionnez le binaire de l'application, puis cliquez sur Analyser.
Après la construction et l'analyse de votre application, les problèmes à résoudre ou à revoir sont affichés.
- Pour les constructions Maven, vous pouvez construire l'application manuellement ou automatiquement.
Si l'analyse détecte des services JAX-RPC dans votre application, suivez les instructions à l'écran pour migrer les services JAX-RPC vers les services JAX-WS .
Corriger les problèmes liés à l'application.
Pour les constructions Maven, en fonction des problèmes à résoudre, la capacité à les résoudre peut être automatisée ou autodirigée.
Puisque IBM Application Modernization Accelerator Developer Tools ne peut pas exécuter d'automatisations pour des constructions qui n'utilisent pas Maven, les problèmes à corriger sont auto-dirigés.
Les questions figurant dans l'onglet Informations complémentaires ne nécessitent pas de modification du code, mais il se peut que vous deviez les vérifier ou les tester et procéder à une modification du code si vous le souhaitez.
Migration des services JAX-RPC vers les services JAX-WS
- Si vous migrez vers Jakarta EE 9 ou une version ultérieure de Jakarta EE, migrez d'abord vos services JAX-RPC vers les services JAX-WS . Sinon, l'assistant de migration de source JAX-RPC ne peut pas vous aider car les services JAX-RPC ne sont pas disponibles à partir de Jakarta EE 9.
- Vous devez également migrer les services de JAX-RPC vers JAX-WS avant d'effectuer toute autre correction de modernisation. Si vous effectuez d'abord d'autres corrections de modernisation, la modernisation peut mettre à jour Java EE vers une version qui ne prend pas en charge les services JAX-RPC .
Soit vous migrez manuellement les services JAX-RPC vers les services JAX-WS , soit vous cliquez sur Continuer. Lorsque vous cliquez sur Continuer, l'outil d'aide à la migration des sources JAX-RPC vers JAX-WS vous aide à effectuer la migration.
Les étapes suivantes supposent que vous avez cliqué sur Continuer.
- Compléter tous les correctifs pour les fichiers .wsdl .
La migration vers JAX-RPC exige que vous effectuiez toutes les corrections pour un fichier .wsdl avant de travailler sur un autre fichier .wsdl de la liste.
Les informations suivantes sont affichées sur la page principale de migration JAX-RPC . Utilisez-le pour terminer la migration.- Redémarrer
- Si vous souhaitez redémarrer la migration, cliquez sur Redémarrer.Important :
- Lorsque vous cliquez sur Redémarrer, un message s'affiche indiquant que si vous souhaitez redémarrer la migration, vous devez annuler toutes les modifications de code effectuées à l'aide de correctifs automatisés et de correctifs manuels. Si vous n'annulez pas toutes les modifications et ne relancez pas la migration, les fichiers .wsdl pour lesquels vous avez précédemment exécuté des automatismes apparaissent dans la section Non pris en charge (migration manuelle requise).
- Si vous avez redémarré la migration JAX-RPC sans annuler vos modifications de code, cliquez sur Redémarrer à nouveau. Revenir à une version du code de l'application qui existait avant que vous ne modifiiez le flux JAX-RPC par le biais de mises à jour automatisées, de mises à jour manuelles ou des deux.
- En attente
- Si vous avez une section en attente avec un ou plusieurs fichiers .wsdl qui sont listés, sélectionnez la section.Sélectionnez chacun des fichiers .wsdl et effectuez le travail suivant qui lui est associé.
- Exécuter des automatismes.Lorsque vous exécutez des automatismes, les actions suivantes sont effectuées.
- L'application est modifiée pour migrer les services JAX-RPC vers les services JAX-WS .
- La section " Mises à jour manuelles " contient des instructions et des liens qui vous permettent de mettre à jour manuellement des fichiers spécifiques sur le site Java .
- La section Examiner les fichiers nouvellement générés est remplie de nouveaux Java parties que les recettes ont créées.
- Effectuer des mises à jour manuelles pour les fichiers Java spécifiés.
- Examiner les fichiers nouvellement générés.
- Compiler manuellement l'application.
- Exécuter des automatismes.
- Opération terminée
- Sélectionnez la section.
Une liste des fichiers .wsdl complétés est affichée et la liste est automatiquement mise à jour.
- Non pris en charge (migration manuelle nécessaire)
- Sélectionnez la section.Si les fichiers .wsdl présentent des caractéristiques que l'outil d'aide à la migration des sources JAX-RPC ne prend pas en charge, les fichiers sont marqués comme non pris en charge. Vous pouvez également marquer les fichiers .wsdl comme non pris en charge si vous exécutez les automatismes pour eux et qu'ils échouent.
- Si l'assistant de migration de source a ajouté un fichier .wsdl à unsupported, migrez manuellement les services JAX-RPC dans le fichier .wsdl .
L'outil d'aide à la migration des sources ajoute un fichier .wsdl à la section non prise en charge lorsque le fichier .wsdl contient des fonctionnalités qui ne sont pas prises en charge
- Si vous avez marqué un fichier .wsdl comme non pris en charge, vous pouvez migrer manuellement les services JAX-RPC dans le fichier .wsdl . Vous pouvez également redémarrer la migration des services JAX-RPC afin d'exécuter les automatismes pour le fichier .wsdl .
- Si l'assistant de migration de source a ajouté un fichier .wsdl à unsupported, migrez manuellement les services JAX-RPC dans le fichier .wsdl .
- Non utilisé (peut être supprimé en toute sécurité)
- Sélectionnez la section pour voir vos fichiers .wsdl inutilisés.
Vous pouvez supprimer les fichiers puisqu'ils ne sont pas utilisés dans l'application.
Après avoir effectué toutes les corrections pour les fichiers .wsdl , ce qui signifie que l'indicateur Total WSDLs doit être corrigé est
0, la migration JAX-RPC est terminée pour les parties pour lesquelles l'assistant de migration de source JAX-RPC peut vous aider.N'oubliez pas : avant de cliquer sur le bouton Construire et analyser qui s'affiche, migrez manuellement les fichiers .wsdl dans la section non prise en charge afin de terminer la migration vers les services JAX-WS . - Cliquez sur Construire et analyser.
L'application que vous avez migrée vers les services JAX-WS est réanalysée pour détecter les problèmes de modernisation restants.
Corriger les problèmes liés à l'application.
Pour les constructions Maven, en fonction des problèmes à résoudre, la capacité à les résoudre peut être automatisée ou autodirigée.
Pour les constructions qui n'utilisent pas Maven, les problèmes à corriger sont autodirigés.
Les questions figurant dans l'onglet Informations complémentaires ne nécessitent pas de modification du code, mais il se peut que vous deviez les vérifier ou les tester et procéder à une modification du code si vous le souhaitez.
Correction des problèmes et examen des informations complémentaires pour votre demande
En fonction des problèmes à résoudre, la capacité à les résoudre peut être automatisée ou autogérée. Les questions figurant dans l'onglet Informations complémentaires ne nécessitent pas de modification du code, mais il se peut que vous deviez les vérifier ou les tester et procéder à une modification du code si vous le souhaitez.
La page Moderniser <nom de l'application> contient les informations suivantes :
- La source du serveur d'application et la cible du serveur d'application
- La source de la version Java SE et la cible de la version Java SE
- Liens vers un rapport technologique, un rapport d'inventaire et un rapport d'analyse
- Onglets pour les problèmes à résoudre, qui peuvent être des corrections automatisées ou autogérées, et des informations supplémentaires.
Le kit de développement Java est nécessaire lorsque vous exécutez des corrections automatisées et lorsque vous construisez l'application après que les modifications de la cible de la version Java ont été effectuées. Assurez-vous que le kit de développement de la cible Java est configuré pour votre IDE.
- Les plug-ins pour Eclipse IDE et l'IDE IntelliJ essaient automatiquement de trouver le kit de développement Java correct. Le kit de développement Java doit correspondre à la cible de la version Java de l'ensemble des kits de développement Java configurés dans les IDE.
- Dans l'IDE Visual Studio Code , vous devez modifier manuellement la configuration du kit de développement Java .
- Compléter les correctifs automatisés pour les builds Maven
Si vous avez un onglet Corrections automatisées avec une ou plusieurs corrections, sélectionnez l'onglet.
Comme Application Modernization Accelerator Developer Tools effectue les corrections pour vous, vous n'avez pas besoin de modifier le code.
- Développez les instructions et lisez-les.
- Il est possible d'ouvrir le problème pour en consulter la description.
- Cliquez sur Exécuter les corrections automatiques.
- Les correctifs automatisés sont corrigés.
- Les questions externes restent dans la liste jusqu'à ce que vous mettiez à jour la dépendance associée.
- Lorsque l' exécution des corrections automatisées est terminée, cliquez sur Reconstruire et actualiser pour mettre à jour la liste des problèmes.
Important : si les correctifs automatiques ne s'exécutent pas et produisent des erreurs de compilation dans la console, veillez à mettre à jour la version du plug-inmaven-compilerà 3.13.0 ou à une version plus récente.- Effectuer des corrections en autonomie
Si vous avez un onglet Corrections auto-dirigées avec une ou plusieurs corrections, sélectionnez l'onglet.
Vous modifiez le code et déterminez comment le corriger.
- Développez les instructions et suivez-les.
- Développez chaque numéro.
- Cliquez sur Lire la suite pour agrandir le numéro.
- Cliquez sur le fichier répertorié dans le problème. Le fichier s'ouvre dans l'éditeur.
- Au fur et à mesure que vous corrigez des problèmes, cliquez sur Reconstruire et actualisez jusqu'à ce que tous les problèmes corrigés par vos soins soient résolus.
Conseil : pour certaines corrections autonomes, vous pouvez utiliser les capacités d'IA générative dans watsonx Code Assistant™ for Enterprise Java Applications.- Adresser des informations complémentaires
Si vous disposez d'un onglet Informations complémentaires comportant un ou plusieurs numéros, sélectionnez cet onglet.
Les questions figurant dans l'onglet sont déterminées de la même manière que les questions figurant dans les autres onglets. Bien que les questions relatives aux informations complémentaires ne nécessitent pas de modification de votre code, passez-les en revue afin de vous assurer que votre application fonctionnera lorsque votre code sera migré.
Les informations supplémentaires peuvent indiquer des problèmes, tels que des modifications mineures du comportement d'une API ou des problèmes de connectivité dans les bases de données ou les registres d'utilisateurs, et ce qu'il convient de faire à ce sujet.
Par exemple, vous disposez d'une base de données à laquelle votre application se connecte. Vous avez lu le numéro correspondant à cette situation. Ensuite, vous vous assurez que l'hôte et le port configurés pour l'application sont valides et accessibles lors de la migration de l'application.
Développez les instructions et suivez-les.
Cliquez sur chaque numéro.
- Cliquez sur Lire la suite pour agrandir le numéro.
- Cliquez sur le lien du fichier figurant dans le numéro pour consulter le code.
- Travailler sur des questions externes en dehors de l'application actuelle
Pendant que vous travaillez sur les correctifs, certains peuvent être classés comme des problèmes externes à l'application en cours. Le code source de ces problèmes se trouve dans des archives spécifiques qui ne font pas partie de l'application source actuelle.
Si l'archive est une bibliothèque appartenant à votre organisation, suivez les étapes suivantes.
- Ouvrez le code source associé en tant qu'application distincte et utilisez Application Modernization Accelerator Developer Tools pour remédier aux problèmes qui s'y trouvent.
- Mettez à jour votre application actuelle pour utiliser la nouvelle version remédiée.
Si l'archive est une bibliothèque dont votre organisation n'est pas propriétaire, effectuez l'étape suivante.
- Mettre à jour vers une version qui ne contient pas ce problème.
Si une telle version n'existe pas, il se peut que vous deviez utiliser une technologie différente.