Exercice 2.5 : Utilisation de la génération automatique des clés

Avant de commencer, vous devez effectuer l'exercice 2.4 : Utilisation des règles de navigation.

Dans l'exercice précédent, vous avez configuré des règles de navigation afin de vous assurer que l'utilisateur a entré un numéro d'ID unique pour la nouvelle annonce classée. Ce processus est frustrant car l'utilisateur n'aime pas choisir lui-même des numéros d'ID.

La manière la plus efficace d'attribuer un numéro d'ID unique à chaque enregistrement consiste à utiliser une base de données qui le fait automatiquement. Dans cet exercice, vous allez configurer la génération automatique des clés afin que le site attribue automatiquement un nouveau numéro à chaque nouvel enregistrement dans la base de données.

La génération automatique des clés est un sujet complexe mais, pour simplifier, de nouvelles clés peuvent être choisies dans une base de données si cette dernière comporte une table spécialement conçue pour la génération de clés. Cette table doit comporter une colonne d'incréments contenant la liste des clés non utilisées, et une colonne d'identités contenant une liste de numéros séquentiels, commençant à 1. Lorsque la base de données a besoin d'une nouvelle clé, elle extrait celle qui se trouve sur la ligne contenant la valeur 1 au niveau de la colonne d'identités. Une nouvelle clé se libère pour la fois suivante. Informations supplémentaires sur la génération automatique des clés.

Configuration de la génération automatique des clés

Présentation visuelle

L'exemple de base de données fourni avec ce tutoriel contient une table de génération de clés appelée KEYS. Ses deux colonnes, telles que décrites plus haut, sont destinées à fournir un nouveau numéro d'ID pour chaque nouvel enregistrement. Au cours de ces étapes, vous allez configurer l'enregistrement relationnel create_record afin qu'il extrait son numéro d'ID de la table KEYS.

  1. Cliquez deux fois sur la page new_record.jsp dans la vue Explorateur de projets.
  2. Cliquez deux fois sur l'enregistrement relationnel create_record dans la vue Données de page. La fenêtre de configuration des enregistrements relationnels s'affiche.
  3. Cliquez sur l'onglet Génération de clé.
  4. Cliquez sur Utiliser la génération automatique de clés.
  5. Cliquez sur la table W5SAMPLE.KEYS.
  6. Dans la zone Sélection de la colonne d'identités, cliquez sur KEY_ID.
  7. Dans la zone Sélection de la colonne des incréments, cliquez sur NEXT_KEY.

    Une seule clé étant nécessaire pour l'ID de l'annonce, conservez la zone Clés extraites en une fois à la valeur 1. Si vous avez besoin de plusieurs clés, ce paramètre indique à la base de données de les sélectionner toutes à la fois.

    La fenêtre de configuration d'un objet de données doit se présenter de la manière suivante :

    Fenêtre de configuration d'un objet de données

  8. Cliquez sur Fermer.

    La zone d'ID sera automatiquement générée pour chaque nouvel enregistrement. Vous devez maintenant supprimer la zone d'entrée de l'ID afin que l'utilisateur ne puisse pas entrer de valeur.

  9. Placez le curseur sur la ligne supérieure de la table de formulaire d'entrée en cliquant sur le texte ID :.
  10. Cliquez sur Table > Supprimer la ligne.
  11. Sauvegardez la page.
  12. Vérifiez que le code de génération automatique de clés a été ajouté au code de la page :
    1. Cliquez à l'aide du bouton droit de la souris sur la page new_record.jsp dans Page Designer et sélectionnez Editer le code de page. Le fichier New_record.java s'ouvre.
    2. Recherchez la méthode getCreate_record().
    3. Vérifiez que la ligne de code suivante a été ajoutée avant la clause catch :

      getCreate_recordMediator().autoGenerateKey(create_record);

Si vous souhaitez savoir quelle clé est générée, vous pouvez supprimer le composant d'entrée du numéro d'ID et le remplacer par un composant de sortie associé à la colonne ID de l'enregistrement create_record. La clé générée automatiquement apparaît alors en haut du formulaire, sans pouvoir être modifiée par l'utilisateur.

Exécution du tutoriel terminé

Lorsque vous serez prêt à publier votre application Web, vous devrez disposer d'un serveur capable de l'héberger afin que les utilisateurs puissent accéder en ligne à votre site Web. Toutefois, pour tester votre site Web, vous pouvez utiliser WebSphere Application Server pour simuler un serveur à des fins de test. Pour en savoir plus sur la procédure à suivre pour tester votre site Web, voir l'exercice 1.3 : Test du site Web.

Félicitations !

L'exécution du tutoriel Affichage d'informations dynamiques dans les pages Web avec JavaServer Faces est terminée. Passez maintenant au Récapitulatif de ce tutoriel.

Retour d'informations
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.