L'éditeur visuel Java fournit des lieurs (binders) d'action qui permettent
d'appeler un service sur une source de données lorsque l'utilisateur clique sur un bouton. Par
exemple, lorsque le bouton Update est actionné, l'application doit
exécuter la méthode modifyEmployee() du service Web en appliquant les
modifications que l'utilisateur a entrées dans les zones de détails. Dans cette leçon, vous allez lier le bouton
Update à un lieur d'action.
Pour lier le bouton Update :
- Sélectionnez le bouton Update dans la zone de conception
et cliquez sur son onglet Lier afin d'ouvrir la
boîte de dialogue Liaisons d'action du composant.

- Dans la zone Type de la source, sélectionnez Service Web.
- Dans la zone Source de données, sélectionnez webServiceDataSource.
- Dans la liste Service source,
sélectionnez la méthode modifyEmployee(directory.service.FullEmployeeRecord).
- La zone Nom prend automatiquement la valeur modifyEmployeeAction.
Acceptez
cette valeur par défaut.
- Dans la zone Argument, sélectionnez selectedEmployeeRecord.
- Comme la méthode modifyEmployee() reçoit pour argument un enregistrement d'employé complet,
vous devez laisser la zone Propriété vide.
- Choisissez Désactivé pour l'état initial du bouton.

- Pour définir les modalités de changement d'état du
bouton, cliquez sur Règles d'activation. Spécifiez que le bouton est activé uniquement
lorsque le contenu de l'argument change, et désactivé dans tous les
autres cas. Cliquez sur OK.

Cela signifie que le bouton Update est désactivé (grisé)
jusqu'à ce que le contenu de l'objet selectedEmployeeRecord soit modifié. En
d'autres termes, dès qu'une nouvelle valeur est entrée dans l'une des zones de détails,
qui sont liées à selectedEmployeeRecord, le lieur active le bouton. Si l'utilisateur sélectionne
un nouvel enregistrement dans la table ou clique sur le bouton Update,
celui-ci est à nouveau désactivé.
- Cliquez sur OK.
Un nouveau lieur SwingDataServiceAction est ajouté pour le bouton
Update.
Si vous sélectionnez ce bouton dans la zone de conception,
l'éditeur visuel trace une ligne indiquant que le bouton est lié à la source de
données du service Web. Une flèche en pointillés de couleur rose part de l'objet
selectedEmployeeRecord vers la ligne.
Cette flèche indique que selectedEmployeeRecord
est l'argument passé dans l'appel à la méthode de service.
Récapitulatif de la leçon
A présent, lorsque vous exécutez l'application, vous pouvez mettre à jour
l'enregistrement d'un employé.
Sélectionnez un employé dans la table et changez son
nom. Dès que vous commencez à éditer le contenu de la zone, le bouton Update est activé.
Lorsque vous
cliquez sur Update, la méthode de service modifyEmployee est appelée et
l'enregistrement de l'employé
est mis à jour. Le nouveau nom est reflété dans la table des employés.