Création de l'application serveur
Remonter à Création d'applications multiniveaux - Index
La création d'un serveur d'applications est très similaire à la création de la plupart des applications de base de données. La principale différence réside dans le fait que le serveur d'applications utilise un module de données.
Pour créer une application serveur
Remarque : Certains des experts suivants requièrent un nouveau projet Application Fiche VCL et, pour le module de données transactionnel, vous devez d'abord ajouter une bibliothèque ActiveX au projet, localisable sur la page ActiveX.
- Démarrez un nouveau projet :
- Pour utiliser la nouvelle technologie DataSnap, créez l'application serveur à l'aide de l'expert Serveur DataSnap ou suivez les étapes mentionnées dans Tutoriel : Utilisation d'un serveur DataSnap avec une application. Dans l'expert Serveur DataSnap, vous pouvez ajouter un TDSServerModule.
- Si vous utilisez SOAP comme protocole de transport, ce sera une nouvelle application service Web. Choisissez Fichier > Nouveau > Autre, puis sur la page Services Web du dialogue Nouveaux éléments, choisissez Application serveur SOAP. Sélectionnez le type de serveur Web à utiliser et, lorsque le système vous demande si vous voulez définir une nouvelle interface pour le module SOAP, refusez.
- Pour tout autre protocole de transport, il vous suffit de choisir Fichier > Nouveau > Application .
- Enregistrez le nouveau projet.
- Ajoutez un nouveau module de données distant au projet. A l'exception du Module de données serveur (qui peut être ajouté depuis l'expert Serveur DataSnap), choisissez Fichier > Nouveau > Autre , et sur la page Multiniveaux ou Services Web de la boîte de dialogue Nouveaux éléments, sélectionnez :
- Module de données distant si vous créez un serveur COM Automation auquel les clients peuvent accéder à l’aide de DCOM, HTTP ou de sockets.
- Module de données transactionnel si vous créez un module de données qui s'exécute sous COM+ (ou MTS). Les connexions peuvent être formées en utilisant DCOM, HTTP ou les sockets. Toutefois, seul DCOM prend en charge les services de sécurité. Afin d'accéder à l'expert, vous devez ajouter une bibliothèque ActiveX au projet, localisable sur la page ActiveX.
- Module de données serveur SOAP si vous créez un serveur SOAP dans une application Service Web. Pour obtenir des informations plus détaillées sur la configuration d'un module de données distant, voir Configuration du module de données.
- Placez les composants ensemble de données appropriés sur le module de données, et configurez-les pour accéder au serveur de base de données.
- Placez sur le module de données un composant TDataSetProvider pour chaque ensemble de données à exposer aux clients. Ce fournisseur est nécessaire au courtage des demandes client et au packaging des données. Attribuez à la propriété DataSet de chaque fournisseur le nom de l’ensemble de données devant être accessible. Vous pouvez définir d'autres propriétés pour le fournisseur. Voir Utilisation des composants fournisseur pour obtenir des informations plus détaillées sur la configuration d'un fournisseur. Si vous travaillez avec des données issues de documents XML, vous pouvez utiliser un document TXMLTransformProvider au lieu d'un ensemble de données et d'un composant TDataSetProvider. Lorsque vous utilisez TXMLTransformProvider, définissez la propriété XMLDataFile afin de spécifier le document XML dont proviennent les données et auquel les mises à jour sont appliquées.
- Ecrivez du code pour le serveur d'applications afin d'implémenter les événements, les règles d'entreprise partagées, les validations de données partagées et la sécurité partagée. Lorsque vous écrivez ce code, vous pouvez effectuer l'une des actions suivantes :
- Etendre l'interface du serveur d'applications afin d'offrir à l'application client d'autres possibilités pour appeler le serveur.
- Fournir une gestion des transactions au-delà des transactions automatiquement créées lorsque les mises à jour sont appliquées.
- Créer des relations maître/détail entre les ensembles de données de votre serveur d’applications.
- Faire en sorte que votre serveur d’applications soit sans état.
- Diviser votre serveur d’applications en plusieurs modules de données distants.
- Enregistrer, compiler et recenser ou installer le serveur d'applications.
- DataSnap avec dbExpress ne nécessite pas de runtime.
- Si votre serveur d'applications utilise des sockets TCP/IP ou des connexions HTTP, vous devez installer le logiciel runtime qui reçoit les messages client, instancie le module de données distant et effectue le marshalling des appels d'interface.
- Pour les sockets TCP/IP, c'est une application de répartition de sockets, Scktsrvr.exe.
- Pour les connexions HTTP, c'est httpsrvr.dll, une DLL ISAPI/NSAPI qui doit être installée avec votre serveur Web.
Rubriques
- Filtrage du flux de communication DataSnap
- Configuration du module de données
- Utilisation de plusieurs modules de données serveur (COM)
- Extension de l'interface du serveur d'applications (COM)
- Gestion des transactions dans les applications multiniveaux (COM)
- Gestion des relations maître/détail
- Gestion des informations d'état dans les modules de données exposés