Commande wsmapping

L'outil wsmapping permet de fournir le mappage descendant du modèle d'objet de l'entité vers le modèle relationnel de la base de données. Vous pouvez utiliser cet outil pour créer les tables de la base de données.

Syntaxe

Avant d'exécuter la commande, vous devez copier le fichier persistence.xml dans le chemin d'accès aux classes ou l'indiquer en tant que fichier de propriétés via l'argument -p [chemin_vers_persistence.xml]. Lancez la commande à partir du sous-répertoire bin du répertoire racine_profil.

La syntaxe de la commande est la suivante :

[AIX][HP-UX][Linux][Solaris][z/OS]
wsmapping.sh [options][arguments]
[IBM i]
wsmapping [options][arguments] 
[Windows]
wsmapping.bat [options][arguments]

Paramètres

L'outil de mappage accepte le jeu standard des arguments de ligne de commande définis par la structure de configuration avec les options suivantes :
  • -schemaAction/-sa <add | refresh | drop | build | reflect | retain | createDB | import | export | none> : action à implémenter par rapport au schéma.

    Ces options correspondent aux actions de l'outil du schéma. Add est l'action par défaut si aucune autre action n'est indiquée. Il est possible de combiner les actions dans une liste dont les éléments sont séparés par une virgule.

    Remarque : L'outil wsmapping accepte l'indicateur -action/-a pour indiquer l'action à effectuer sur chaque classe. Sauf si vous exécutez wsmapping sur tous les types persistants à la fois, ou si vous supprimez un mappage, vous devez employer l'action par défaut add ou l'action build. Dans le cas contraire, vous risquez de supprimer par inadvertance des composants de schéma utilisés par des classes sur lesquelles vous n'exécutez pas l'outil de manière simultanée.
  • -schemaFile/-sf <true/t | false/f> : cette option permet d'écrire le schéma prévu dans un document XML plutôt que de modifier la base de données.

    Le document XML peut ensuite être modifié, manipulé et validé dans la base de données grâce à l'outil de schéma.

  • -sqlFile/-sql <stdout | output file> : cette option permet d'écrire les modifications du schéma prévues dans un script SQL plutôt que de modifier la base de données.

    Combinez ce paramètre avec une action schemaAction build pour générer un script qui recrée le schéma des mappages en cours, même si le schéma existe déjà.

  • -dropTables/-dt <true/t | false/f> : lorsque cette option prend la valeur true, le schéma supprime les tables qui semblent inutilisées lors des actions retain et refresh.

    La valeur par défaut est true.

  • -dropSequences/-dsq <true/t | false/f> : si cette option est réglée à true, le schéma supprime les séquences inutilisées lors des actions retain et refresh.

    La valeur par défaut est true.

  • -openjpatables/-ot <true/t | false/f> : lorsqu'il reflète le schéma, ce paramètre détermine s'il doit effectuer cette opération sur les tables et les séquences dont le nom commence par OPENJPA_.

    Certains composants OpenJPA utilisent ces tables et ces séquences, telles que la fabrique de schéma des tables. Lorsqu'il utilise d'autres actions, le paramètre openjpaTables contrôle si ces tables peuvent être supprimées. La valeur par défaut est false.

  • -ignoreErrors/-i <true/t | false/f> : si ce paramètre est réglé à false, une exception a lieu si l'outil rencontre des erreurs liées à la base de données.

    La valeur par défaut est false.

  • -schemas/-s <schema list> : indique une liste des noms de schéma et de table auxquels OpenJPA doit accéder lors de l'exécution de l'outil wsschema.

    Equivaut à définir la propriété openjpa.jdbc.Schemas afin qu'elle ne s'exécute qu'une seule fois. Ce paramètre correspond au paramètre -schemas/-s dans l'outil wsschema. Cette option est ignorée si -readSchema/-rs n'est pas réglé à true.

  • -readSchema/-rs <true/t | false/f> : réglez cette option à true pour lire la totalité du schéma existant lors de l'exécution de l'outil de mappage.

    La lecture du schéma existant permet de vérifier qu'OpenJPA ne génère pas de mappages qui utilisent les noms de table, d'index, de clé primaire ou de clé externe qui entrent en conflit avec les noms existants.

    Remarque : En fonction du pilote JDBC, la sélection de la fonction -readSchema/-rs peut ralentir le processus pour les schémas volumineux.
  • -primaryKeys/-pk <true/t | false/f> : cette option détermine si les clés primaires peuvent être manipulées sur les tables existantes.

    La valeur par défaut est true.

  • -foreignKeys/fk <true/t | false/f> : cette option détermine si les clés externes peuvent être manipulées sur les tables existantes.

    La valeur par défaut est true. Cela signifie que pour ajouter une nouvelle clé externe à une classe déjà mappée, vous devez explicitement régler à true ce paramètre.

  • -indexes/-ix <true/t | false/f> : cette option détermine si les index peuvent être manipulés sur des tables existantes.

    La valeur par défaut est true. Cela signifie que pour ajouter de nouveaux index à une classe déjà mappée, vous devez explicitement régler à true ce paramètre.

  • -sequences/-sq <true/t | false/f> : cette option détermine si les séquences peuvent être manipulées.

    La valeur par défaut est true.

  • -meta/-m <true/t | false/f> : cette option détermine si un mappage s'applique aux métadonnées à la place ou en plus des mappages standard.
  • L'outil wsmapping accepte l'option -action/-a pour indiquer l'action à effectuer sur chaque classe. Il est possible de combiner plusieurs actions dans une liste dont les éléments sont séparés par une virgule. Les actions disponibles sont :
    • buildSchema : action par défaut. L'action buildSchema fait correspondre le schéma de la base de données avec les mappages existants. Si les mappages fournis entrent en conflit avec les définitions de classe, OpenJPA échoue et émet une exception à titre informatif.
    • validate : vérifie que les mappages des classes données sont valides et qu'ils correspondent au schéma de la base de données. Aucun mappage de tables n'est modifié à la suite de cette action. Une exception est émise si un mappage n'est pas valide.
Chaque argument supplémentaire de l'outil wsmapping doit être l'un des arguments suivants :
  • nom complet d'une classe persistante,
  • nom .java d'une classe persistante,
  • fichier .class d'une classe persistante.

Si vous n'indiquez pas d'argument pour l'outil wsmapping, il s'exécute sur les classes figurant dans la liste des classes persistantes.

Utilisation

Avant d'exécuter l'outil wsmapping, vous devez configurer les informations de la source de données, notamment l'URL, l'utilisateur et le mot de passe. Vous devez exécuter l'outil wsenhancer avant l'outil wsmapping pour insérer un code intermédiaire dans les classes entité. Les fichiers de classe compilés de vos entités doivent figurer dans le chemin de classes. Par exemple, supposons qu'ils sont dans target/classes :

[AIX][HP-UX][Linux][AIX HP-UX Solaris][Solaris][z/OS]
export CLASSPATH=${CLASSPATH}:target/classes 

wsmapping.sh ...
[IBM i]
export CLASSPATH=${CLASSPATH}:target/classes 

wsmapping ...
[Windows]
SET CLASSPATH=%CLASSPATH%;target\classes  

wsmapping.bat . . .

Pour créer des tables, exécutez la commande wsmapping à partir du répertoire ${racine_profil}/bin. Les tables de la base de données sont alors créées ou mises à jour. Les messages et les erreurs sont consignés dans la console d'administration comme indiqué dans les paramètres de journalisation.

wsmapping.sh . . . Sous Windows :

Conseil : Grâce au paramètre buildSchema de la propriété openjpa.jdbc.SynchronizeMappings, l'outil de mappage fournit le mappage par défaut qui correspond automatiquement au schéma de la base de données. Il n'est pas nécessaire d'exécuter cet outil de mappage si le mappage par défaut satisfait au schéma nécessaire de la base de données.

Exemples

Pour créer les tables de base de données requises pour le fichier Magazine.java :

[AIX][HP-UX][Linux][Solaris][z/OS]
${profile_root}/bin/wsmapping.sh Magazine.java
[IBM i]
${profile_root}/bin/wsmapping Magazine.java
[Windows]
${profile_root}\bin\wsmapping.sh Magazine.java

Pour supprimer les tables pour le fichier Magazine.java :

[AIX][HP-UX][Linux][Solaris][z/OS]
C:\> %profile_root%/bin/wsmapping.sh -sa dropDB Magazine.java
[IBM i]
C:\> %profile_root%/bin/wsmapping -sa dropDB Magazine.java
[Windows]
C:\> %profile_root%\bin\wsmapping.bat -sa dropDB Magazine.java

Pour valider les mappages de toutes les classes figurant dans le chemin d'accès aux classes :

[AIX][HP-UX][Linux][Solaris][z/OS]
C:\> %profile_root%/bin/wsmapping.sh -a validate
[IBM i]
C:\> %profile_root%/bin/wsmapping -a validate
[Windows]
C:\> %profile_root%\bin\wsmapping.bat -a validate

Informations supplémentaires

Pour plus d'informations et d'exemples, consultez la partie relative aux mappages, dans le document Apache OpenJPA User's Guide.


Icône indiquant le type de rubrique Rubrique de référence



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rejb_wsmapping
Nom du fichier : rejb_wsmapping.html