4D v14.3

Page Client/Serveur

Accueil

 
4D v14.3
Page Client/Serveur

Page Client/Serveur  


 

 

4D vous permet de générer des applications client/serveur personnalisées, homogènes, multi-plate-formes et avec option de mise à jour automatique. Les applications Client et Serveur sont paramétrées dans la page Client/Serveur de la boîte de dialogue du générateur d’applications.

Une application client/serveur est issue de la combinaison de trois éléments :

  • une base de données 4D compilée,
  • l’application 4D Server,
  • l’application 4D Volume Desktop (Mac OS et/ou Windows).

Une fois générée, une application client/serveur se compose de deux parties homogènes, la partie Serveur (unique), et la partie Cliente (à installer sur chaque poste client). A titre de comparaison, rappelons qu’un déploiement standard avec 4D Server nécessite l’application 4D Server, le fichier de structure de la base, le fichier de données de la base et l’application 4D en mode distant. 

En outre, l’application client/serveur est personnalisée et son maniement est simplifié :

  • pour lancer la partie serveur, l’utilisateur double-clique simplement sur l’application serveur : il n’est pas nécessaire de sélectionner un fichier de structure.
  • Pour lancer la partie cliente, l’utilisateur double-clique simplement sur l’application cliente, qui se connecte directement à l’application serveur : il n’est pas nécessaire de choisir une base de données dans une boîte de dialogue de connexion. Si la connexion échoue, l’utilisateur pourra cependant saisir l’adresse du serveur dans une boîte de dialogue de connexion standard.
    Il est également possible de “forcer” l’affichage de la boîte de dialogue de connexion standard en maintenant la touche Option (Mac OS) ou Alt (Windows) enfoncée lors du lancement de l’application cliente.
    Seule la partie cliente peut se connecter à la partie serveur correspondante. Si un utilisateur tente de se connecter à la partie serveur à l’aide d’une application 4D standard, un message d’erreur est retourné et la connexion est impossible.

Enfin, une application client/serveur peut être paramétrée de telle sorte que la partie cliente puisse être mise à jour automatiquement via le réseau. Cette fonction est détaillée dans le paragraphe Copie des applications clientes dans l'application serveur.

Il est également possible d'automatiser la mise à jour de la partie serveur moyennant l'utilisation d'une séquence de commandes du langage (cf. section Finaliser et déployer les applications finales).

  • Construire application serveur : cochez cette option pour générer la partie serveur de votre application lors de la phase de construction. Vous devez désigner sur votre disque l’emplacement de l’application 4D Server à utiliser. Ce 4D Server doit correspondre à la plate-forme courante (qui sera également la plate-forme de l’application serveur).
    Pour sélectionner le dossier de 4D Server, cliquez sur le bouton [...] et utilisez la boîte de dialogue de recherche de dossier pour localiser l’application 4D Server. Sous Mac OS, vous devez sélectionner directement le progiciel (package) de 4D Server.
  • Version courante : permet d’indiquer le numéro de version courante de l’application générée. Vous pourrez par la suite accepter ou refuser les connexions des applications clientes en fonction de leur numéro de version. L’intervalle de compatibilité des applications clientes et serveur est défini à l’aide de clés XML spécifiques (cf. paragraphe ).
  • Construire application cliente : cochez cette option pour générer la partie cliente de votre application lors de la phase de construction. Vous devez désigner sur votre disque l’emplacement de l’application 4D Volume Desktop à utiliser. Ce 4D Volume Desktop doit correspondre à la plate-forme courante (qui sera également la plate-forme de l’application cliente). Si vous souhaitez générer une version de l’application cliente pour la plate-forme “concurrente”, vous devez effectuer la même opération sur cette plate-forme. Pour plus d’informations sur ce point, reportez-vous au paragraphe suivant.
    Pour sélectionner le dossier de 4D Volume Desktop, cliquez sur le bouton [...] et utilisez la boîte de dialogue standard pour localiser l’application. Sous Mac OS, vous devez sélectionner le progiciel (package) de 4D Volume Desktop.

Lors de la construction de l’application client-serveur exécutable, 4D duplique le contenu du dossier 4D Server dans le sous-dossier Server du dossier de destination et le contenu du dossier 4D Volume Desktop dans le sous-dossier Client du dossier de destination. Vous pouvez donc parfaitement personnaliser le contenu des dossiers 4D Server et 4D Volume Desktop d’origine en fonction de vos besoins. 

Vous pouvez, par exemple :

  • installer une version de 4D Server correspondant à une langue spécifique ;
  • ajouter des fichiers ou dossiers dans le dossier PlugIns ;
  • personnaliser le contenu du dossier 4D Extensions.

Note : Sous Mac OS, 4D Server est fourni sous forme de progiciel. Vous devrez tout d’abord afficher son contenu (effectuez Control+clic sur son icône) afin de pouvoir le modifier.

Les options de cette zone permettent de mettre en place le mécanisme de mise à jour des parties clientes de vos applications client/serveur via le réseau à chaque nouvelle version de l’application générée.

  • Permettre la mise à jour automatique de l’application cliente Windows/Macintosh : cochez ces options pour que votre application client/serveur bénéficie du mécanisme de mise à jour automatique des parties clientes via le réseau.
    Si vous souhaitez créer une application cliente multi-plate-forme, vous devez en outre désigner sur votre disque l’emplacement de l’application 4D Volume Desktop correspondant à la plate-forme “concurrente” de la plate-forme de génération. Par exemple, si vous construisez votre application sous Windows, vous devez désigner à l’aide du bouton [...] l’application 4D Volume Desktop Mac OS (fournie sous forme de package).

La mise à jour de l’application cliente est nécessaire lorsque vous souhaitez utiliser une nouvelle version de 4D Server ou d’un des composants.

A noter que les modifications apportées à l’application personnalisée (développement et/ou données) sont toujours transmises automatiquement à chaque poste client. 

La mise à jour de l’application cliente évite au développeur de devoir installer “manuellement” les nouvelles versions de 4D sur chaque poste client. La procédure de mise à jour automatique des applications 4D clientes s'effectue via HTTP et utilise une application utilitaire nommée "updater" installée sur les postes clients et chargée de gérer les mises à jour.

Dans la pratique, la proposition de mise à jour des applications clientes découle automatiquement de la mise à jour de l’application serveur.

Le principe est le suivant : lors de la génération d’une nouvelle version de l’application client-serveur depuis le générateur d’applications, la nouvelle partie cliente est copiée sous forme compressée dans le sous-dossier Upgrade4DClient du dossier NomApplication Server (sous Mac OS, ces dossiers sont inclus dans le progiciel serveur). Si vous avez suivi le processus de génération d’une application cliente multi-plate-forme, un fichier .4darchive de mise à jour est disponible pour chaque plate-forme :

Note : Les fichiers supplémentaires archive.mac et archive.win permettent de mettre à jour des applications v13 en v14. Vous pouvez désactiver leur génération automatique en utilisant la clé XML 4D Clés XML BuildApplication avec la commande GENERER APPLICATION.

Pour provoquer la mise à jour des applications clientes, il suffit de remplacer l’ancienne version de l’application serveur par la nouvelle puis de l’exécuter. Le reste du processus est automatique. 

Côté client, au moment où l’“ancienne” application cliente tente de se connecter à l’application serveur mise à jour, une boîte de dialogue s’affiche sur le poste client, lui indiquant qu’une nouvelle version est disponible. L’utilisateur peut mettre sa version à jour ou annuler la boîte de dialogue.

  • Si l’utilisateur clique sur OK, la nouvelle version est téléchargée sur le poste client via le réseau. A l’issue du téléchargement, l’ancienne application client quitte, la nouvelle est lancée et se connecte au serveur. L’ancienne application est alors placée dans la corbeille de la machine.
  • Si l’utilisateur clique sur Annuler, la mise à jour est annulée ; si l’ancienne version de l’application cliente n’appartient pas à l’intervalle des numéros de version acceptés par le serveur (cf. paragraphe suivant), l’application quitte et la connexion est impossible. Sinon (par défaut), la connexion est établie.

Dans certains cas, vous pourrez souhaiter que les applications clientes ne puissent pas annuler le téléchargement des mises à jour. Par exemple, si vous avez utilisé une nouvelle version de l’application source 4D Server, il est impératif que la nouvelle version de l’application cliente soit installée sur chaque poste client.

Pour forcer la mise à jour, il vous suffit d’exclure les versions courantes des applications clientes (N-1 et précédentes) de l’intervalle des numéros de version compatibles avec l’application serveur. Dans ce cas, le mécanisme de mise à jour n’autorisera pas la connexion des applications clientes non mises à jour. Par exemple, si la nouvelle version de l’application client-serveur est 6, vous pouvez stipuler que toute application cliente ayant un numéro de version strictement inférieur à 6 ne sera pas autorisé à se connecter. 

Le numéro de version courante est défini dans la page Client/Serveur du générateur d’application (cf. ci-dessus). Les intervalles de numéros autorisés sont définis dans le projet d’application via des clés XML spécifiques. Pour plus d’informations, reportez-vous au paragraphe Clés XML de paramètres.

Si 4D ne peut pas effectuer la mise à jour de l’application cliente, le poste client affiche le message d’erreur suivant : “La mise à jour de l’application cliente a échoué. L’application va maintenant quitter.”

Les causes possibles de cette erreur sont multiples. Lorsque vous rencontrez ce message, il est conseillé de contrôler en premier lieu les paramètres suivants :

  • chemins d’accès : vérifiez la validité des chemins d’accès définis dans le projet d’application via la boîte de dialogue du Générateur d’applications ou via des clés xml (par exemple ClientMacFolderToWin). Vérifiez en particulier les chemins d’accès aux versions de 4D Volume Desktop.
  • privilèges lecture/écriture : sur la machine cliente, vérifiez que l’utilisateur courant dispose de droits d’accès en écriture pour l’application cliente mise à jour.

A l’issue du processus de génération d’une application client-serveur, vous devez trouver dans le dossier de destination un nouveau dossier nommé Client Server executable. Ce dossier contient deux sous-dossiers, NomApplication Client et NomApplication Server :

Note : Ces dossiers ne sont pas générés si une erreur est survenue. Dans ce cas, ouvrez le fichier d’historique (cf. paragraphe Fichier d’historique) pour connaître la cause de l’erreur. 

Le dossier NomApplication Client contient la partie cliente de l’application correspondant à la plate-forme d’exécution du générateur d’application. Ce dossier doit être installé sur chaque poste client. Le dossier NomApplication Server contient la partie serveur de l’application. 

Le contenu de ces dossiers diffère en fonction de la plate-forme courante :

  • Sous Windows, chaque dossier contient le fichier exécutable de l’application, nommé NomApplication Client.exe pour la partie cliente et NomApplication Server.exe pour la partie serveur, ainsi que les fichiers .rsr correspondants. Les dossiers contiennent également divers fichiers et dossiers nécessaires au fonctionnement des applications et les éléments personnalisés éventuellement placés dans les dossiers 4D Volume Desktop et 4D Server d’origine.
  • Sous Mac OS, chaque dossier contient uniquement le progiciel de l’application, nommé NomApplication Client pour la partie cliente et NomApplication Server pour la partie serveur. Chaque progiciel contient tous les éléments nécessaires à son fonctionnement. Sous Mac OS, un progiciel est lancé via un double-clic.

Note : Les progiciels Mac OS générés contiennent les mêmes éléments que les sous-dossiers Windows. Pour les visualiser, vous devrez tout d’abord afficher leur contenu (effectuez Control+clic sur leur icône) afin de pouvoir les modifier. 

Si vous avez coché l’option “Permettre la mise à jour automatique de l’application cliente”, un sous-dossier supplémentaire nommé Upgrade4DClient est ajouté dans le dossier/progiciel NomApplication Server. Ce sous-dossier contient l’application cliente au format Mac OS et/ou Windows sous forme de fichier compressé. Ce fichier est utilisé lors de la mise à jour automatique des applications clientes.

Si la partie serveur et/ou la partie cliente de votre application exécutable est utilisée en tant que serveur Web, les fichiers et dossiers requis par le serveur doivent être installés à des emplacements spécifiques. Ces éléments sont les suivants :

  • fichiers cert.pem et key.pem (facultatifs) : ces fichiers sont requis pour les connexions SSL ainsi que par les commandes de cryptage des données,
  • dossier racine Web (DossierWeb) par défaut.

Sous Windows

  • Application serveur : les éléments doivent être installés dans le sous-dossier Client Server executable\NomApplication Server\Server Database.
  • Application cliente : les éléments doivent être installés dans le sous-dossier Client Server executable\NomApplication Client.

Sous Mac OS

  • Application serveur : les éléments doivent être installés à côté du progiciel NomApplication Server.
  • Application cliente : les éléments doivent être installés à côté du progiciel NomApplication Client.

 
PROPRIÉTÉS 

Produit : 4D
Thème : Finaliser et déployer les applications finales
Nom intl. : Client/Server page

 
MOTS-CLÉS 

.4darchive, 4darchive

 
UTILISATION DE L'ARTICLE

4D - Mode Développement ( 4D v14 R2)
4D - Mode Développement ( 4D v14 R3)
4D - Mode Développement ( 4D v14.3)
4D - Mode Développement ( 4D v14 R4)

Hérité de : Page Client/Serveur ( 4D v12.4)