Commande eclenhancer
L'outil d'extension d'entité (entity enhancer) pour applications JPA (Java Persistence API) insère du code intermédiaire (bytecode) dans un fichier de classe entité prenant en charge le fournisseur JPA pour gérer l'état d'une entité. Utilisez cet outil de ligne de commande pour trouver des informations relatives à la version installée du fournisseur de spécification Java Persistence API (JPA) 2.1, EclipseLink, pour WebSphere Application Server.
Utilisée avec le serveur d'applications, l'API JPA requiert que toutes les classes d'entité soient étendues si vous souhaitez gérer leur état. Dans un environnement géré par conteneur, l'extension automatisée est fournie par les conteneurs. Toutefois, dans un environnement Java SE, aucun conteneur ne gère la persistance et vous pouvez utiliser cette commande fréquemment avant la mise en forme des fichiers d'application afin d'effectuer des tests. Après avoir créé les entités JPA, vous pouvez exécuter l'outil eclenhancer pour injecter du code intermédiaire dans les entités avant d'empaqueter le fichier JAR dans le fichier EAR de l'application.
Syntaxe
Avant d'exécuter la commande, vous devez disposer d'une copie du fichier persistence.xml dans le chemin d'accès aux classes ou indiquer son emplacement dans l'argument -persistenceinfo. Exécutez la commande depuis le sous-répertoire bin du répertoire profile_root.
La syntaxe de la commande est la suivante :
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Linux]](../images/linux.gif)
![[Solaris]](../images/solaris.gif)
![[z/OS]](../images/ngzos.gif)
eclenhancer.sh [arguments] <source> <target>
![[Windows]](../images/windows.gif)
eclenhancer.bat [arguments] <source> <target>
Paramètres
- classpath <path : Indique l'emplacement des fichiers source Java à générer, à savoir un répertoire ou un fichier JAR. Si le fichier persistence.xml ne figure pas à cet emplacement, vous devez utiliser l'attribut -persistenceinfo pour spécifier l'emplacement du fichier persistence.xml.
- <source> : Indique l'emplacement des fichiers source Java à générer, à savoir un répertoire ou un fichier JAR. Si le fichier persistence.xml ne figure pas à cet emplacement, vous devez spécifier son emplacement à l'aide de l'attribut -persistenceinfo.
- <target> : Indique l'emplacement de sortie, à savoir un répertoire ou un fichier JAR.
Syntaxe
Pour utiliser l'outil eclenhancer, vous devez définir des entités sur les spécifications JPA et vous devez compiler ces entités. Vous pouvez exécuter l'outil eclenhancer sur les entités avant de les empaqueter dans un fichier JAR. Si les entités sont déjà empaquetées, vous pouvez extraire les fichiers de classe entité, exécuter l'outil d'extension, puis recréer le fichier JAR.
- Vérifiez que vos entités figurent dans le chemin d'accès aux classes. Le cas échéant, ajoutez-les dans le chemin d'accès aux classes.
- Exécutez la commande eclenhancer. Elle se trouve dans le répertoire racine_profil/bin.
Exemples
Pour étendre les entités qui se trouvent dans un fichier JAR :
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Linux]](../images/linux.gif)
![[Solaris]](../images/solaris.gif)
![[z/OS]](../images/ngzos.gif)
$ cd build
/home/user/myproject/build $ ${profile_root}/bin/eclenhancer.sh -persistenceinfo
/home/user/myproject/build/myjar-containing-persistencexml.jar -classpath
/classpath1;/classpath2 /home/user/myproject/build/myjar-source.jar
/home/user/myproject/build/myjar-target.jar
![[Windows]](../images/windows.gif)
C:\myproject\build>%profile_root%\bin\eclenhancer.bat -persistenceinfo c:\myjar-
containing-persistencexml.jar -classpath c:\classpath1;c:\classpath2 c:\myjar-
source.jar c:\myjar-target.jar