Adaptateur de fichier (exemple BizTalk Server)
L’exemple d’adaptateur de fichier est écrit dans Microsoft Visual C# .NET pour fonctionner avec Microsoft BizTalk Server. Il fournit un code pour créer un adaptateur dynamique ou un adaptateur statique. La procédure suivante ne présente cependant que l'adaptateur statique. Un adaptateur statique est un adaptateur comprenant un jeu statique de schémas et aucune interface utilisateur personnalisée. Un adaptateur dynamique possède une interface utilisateur personnalisée et, potentiellement, un jeu dynamique de schémas. Les adaptateurs statiques et dynamiques utilisent tous deux l'assistant Ajout d'adaptateur pour ajouter leurs schémas à un projet BizTalk.
Notes
L’exemple d’adaptateur de fichier n’est pas identique à l’adaptateur FILE natif fourni avec BizTalk Server. Par conséquent, lorsque vous sélectionnez le type de transport pour utiliser cet exemple, sélectionnez "statique" au lieu de FICHIER.
L'adaptateur dynamique comprenant une interface utilisateur personnalisée et, potentiellement, un jeu dynamique de schémas nécessite un code supplémentaire côté gestion de l'adaptateur. Pour mieux comprendre l’utilisation de l’ensemble dynamique de schémas, consultez Configuration de l’adaptateur de Design-Time dynamique.
Fonctions de l'exemple
L’exemple d’adaptateur copie les fichiers d’un dossier de fichiers, les envoie à BizTalk sous forme de messages ou les envoie à BizTalk Server et les dépose dans un dossier de fichiers. Il fournit un code pour créer un adaptateur dynamique ou un adaptateur statique ; la procédure suivante ne présente cependant que l'adaptateur statique. Un adaptateur statique est un adaptateur comprenant un jeu statique de schémas et aucune interface utilisateur personnalisée. Un adaptateur dynamique possède une interface utilisateur personnalisée et, potentiellement, un jeu dynamique de schémas. Les adaptateurs statiques et dynamiques utilisent tous deux l'assistant Ajout d'adaptateur pour ajouter leurs schémas à un projet BizTalk.
Vous pouvez utiliser l'exemple d'adaptateur de fichiers comme modèle à partir duquel vous pourrez créer d'autres adaptateurs personnalisés.
Accès à l'exemple
<Chemin d’accès> des exemples\AdaptersDevelopment\Adaptateur de fichier
Notes
L’emplacement par défaut du <chemin d’accès> aux exemples est %ProgramFiles%\Microsoft BizTalk Server\SDK\Samples lorsque BizTalk Server est installé sur un ordinateur exécutant une version 32 bits de Windows. L’emplacement par défaut du <chemin d’accès> aux exemples est %ProgramFiles(x86)%\Microsoft BizTalk Server\SDK\Samples lorsque BizTalk Server est installé sur un ordinateur exécutant une version 64 bits de Windows. Pour déterminer les valeurs associées aux variables d’environnement %ProgramFiles% ou %ProgramFiles(x86)%, tapez echo %ProgramFiles% ou echo %ProgramFiles(x86)% à l’invite de commandes, puis appuyez sur ENTRÉE. Si vous exécutez cet exemple sur un système d’exploitation 64 bits, vous devez modifier toutes les références dans l’un des fichiers .reg de %ProgramFiles% en %ProgramFiles(x86)% avant d’exécuter les fichiers .reg.
Les tableaux suivants montrent les fichiers de cet exemple et décrivent leur finalité.
\Fichiers d'adaptateur de fichiers | Description |
---|---|
\Fichiers de projet BizTalk | Contient le projet d'atelier de test d'adaptateur, utilisé pour tester l'exemple d'adaptateur. |
\Fichiers de phase de conception | Contient le projet de phase de conception et de gestion (AdapterManagement.csproj). |
\Fichiers exécutables | Contient les projets de réception et de transmission de copie de fichier exécutable (DotNetFile.csproj). |
DynamicAdapterManagement.reg | Inscrit l'exemple d'adaptateur dynamique. |
Instance.xml | Fichier d'exemple à passer dans l'adaptateur de fichiers. |
StaticAdapterManagement.reg | Inscrit l'exemple d'adaptateur statique. |
\Projet BizTalk\Fichiers d'atelier de test d'adaptateur | Description |
---|---|
AdapterHarness.odx, AdapterHarness.sln, AdapterHarnessProject.btproj | Fournit un projet, une solution, et des fichiers associés pour le projet BizTalk. |
mySchema.xsd | Fournit le schéma Instance.xml attendu par l'orchestration d'atelier de test en provenance de la partie réception de l'adaptateur, ainsi que le schéma de l'Instance.xml transmis à la partie envoi de l'adaptateur par l'orchestration. |
\Phase de conception\Fichiers de gestion d'adaptateur | Description |
---|---|
AdapterManagement.cs, AdapterManagement.csproj, AdapterManagement.sln | Projet, solution, et fichiers associés pour la phase de conception de l'adaptateur. |
AssemblyInfo.cs | Contient des informations d'assembly pour cet exemple. |
CategorySchema2.xml | Pas utilisé par l'exemple d'adaptateur. |
CategorySchema.xml | Contient l'arborescence d'organisation du service pour l'adaptateur statique. |
DotNetFileResource.resx | Contient des ressources. |
ReceiveHandler.xsd, ReceiveLocation.xsd | Contient un gestionnaire côté réception et des schémas de propriétés personnalisées de point de terminaison |
service1.wsdl | Contient des définitions d'opérations pour l'adaptateur. |
TransmitHandler.xsd, TransmitLocation.xsd | Contient un gestionnaire côté transmission et des schémas de propriétés personnalisées de point de terminaison |
\Fichiers exécutables | Description |
---|---|
DotNetFile.csproj, DotNetFile.sln, AssemblyInfo.cs, DotNetFileExceptions.cs, DotNetFileProperties.cs, DotNetFileReceiver.cs, DotNetFileReceiverEndPoint.cs, DotNetFileTransmitter.cs, DotNetFileTransmitterEndpoint.cs, DotNetFileAsyncTransmitterBatch.cs, BatchMessage.cs |
Fichiers pour les adaptateurs d'envoi et de réception de copie de fichiers exécutables. Vous pouvez modifier et enregistrer ces fichiers sous un nouveau nom pour des composants personnalisés. DotNetFile.csproj et DotNetFile.sln sont les fichiers projet et solution. AssemblyInfo.cs contient des informations d'assembly pour cet exemple. DotNetFileReceiver.cs lit les fichiers des emplacements de réception et les envoie à BizTalk Server. DotNetFileExceptions.cs implémente un code pour gérer les exceptions survenant pendant le traitement du message DotNetFileProperties.cs contient des propriétés communes aux opérations de réception et d'envoi BatchMessage.cs implémente une messagerie par lot. DotNetFileReceiverEndPoint.cs est une classe correspondant à un emplacement de réception/URI. Il gère l'interrogation du dossier donné quant à de nouveaux messages DotNetFileTransmitter.cs est une classe singleton pour un adaptateur d'envoi DotNetFile. Tous les messages allant vers divers ports d'envoi de ce type d'adaptateur passent par cette classe DotNetFileTransmitterEndpoint.cs gère la transmission des messages. |
\SDK\Samples\AdaptersDevelopment\BaseAdapter\v1.0.2 files | Description |
---|---|
Adapter.cs, AdapterException.cs, AsyncTransmitter.cs, batch.cs, ConfigProperties.cs, ControlledTermination.cs, IManageEndpoints.cs, Receiver.cs, ReceiverEndpoint.cs | Fournit des classes qui constituent l'adaptateur de base. Vous pouvez utiliser celles-ci pour créer vos propres adaptateurs. |
Comment utiliser cet exemple
Utilisez l'exemple d'adaptateur de fichiers comme modèle à partir duquel vous pourrez créer d'autres adaptateurs personnalisés.
Création de cet exemple
Important
Si l'installation BizTalk est 64 bits ou si son emplacement a été modifié, les valeurs OutboundAssemblyPath, InboundAssemblyPath, AdapterMgmtAssemblyPath doivent être modifiées en conséquence.
Utilisez la procédure suivante pour créer et initialiser l'exemple d'adaptateur de fichiers.
Pour créer une clé de nom fort pour les projets DotNetFileAdapter et le projet d'adaptateur de base
Démarrez l’invite de commandes Visual Studio.
Notes
Exécutez l'invite de commandes en tant qu'administrateur.
Remplacez le répertoire actif par le < répertoire Samples Path>\AdaptersDevelopment\BaseAdapter\v1.0.2.
À l’invite de commandes, tapez sn –k BaseAdapter.snk , puis appuyez sur ENTRÉE. Ce fichier .snk peut déjà exister si d'autres exemples ont été exécutés auparavant. Si c'est le cas, vous pouvez aller directement à l'étape 4 et sauter cette étape.
Remplacez le répertoire actif par le < répertoire Samples Path>\AdaptersDevelopment\File Adapter\Runtime.
À l’invite de commandes, tapez sn –k DotNetFileAdapter.snk , puis appuyez sur ENTRÉE.
À l’invite de commandes, tapez exit , puis appuyez sur ENTRÉE pour fermer la fenêtre d’invite de commandes.
Pour créer le projet exécution de récepteur
Cliquez sur Démarrer, pointez sur Tous les programmes, sur Accessoires, puis cliquez sur Windows Explorer.
Accédez au < répertoire Samples Path>"\AdaptersDevelopment\File Adapter\Runtime », puis double-cliquez sur DotNetFile.sln.
Pour reconstruire le projet d’exécution du récepteur d’adaptateur, dans Explorateur de solutions, cliquez avec le bouton droit sur DotNetFile, puis cliquez sur Reconstruire.
Dans le menu Fichier , cliquez sur Quitter pour fermer Visual Studio.
Pour créer le projet de phase de conception d'adaptateur
Dans Windows Explorer, accédez au < répertoire Samples Path>"\AdaptersDevelopment\File Adapter\Design Time\Adapter Management », puis double-cliquez sur AdapterManagement.sln.
Dans Explorateur de solutions, cliquez avec le bouton droit sur AdapterManagement, puis cliquez sur Reconstruire.
Dans le menu Fichier , cliquez sur Quitter pour fermer Visual Studio.
Pour inscrire l'exemple d'adaptateur statique
Dans Windows Explorer, accédez au < répertoire Samples Path>"\AdaptersDevelopment\File Adapter ».
Pour ajouter l’exemple d’adaptateur au Registre, double-cliquez sur StaticAdapterManagement.reg.
Notes
StaticAdapterManagement.reg inclut des chemins codés en dur vers C :\Program Files\Microsoft BizTalk Server\. Si vous n’avez pas installé BizTalk Server dans le répertoire %ProgramFiles%\Microsoft BizTalk Server\, si vous avez mis à niveau votre installation BizTalk Server à partir de BizTalk Server 2009 ou BizTalk Server 2006 R2, ou si vous avez installé BizTalk Server sur un ordinateur qui exécute une version 64 bits de Windows, vous devez modifier le fichier StaticAdapterManagement.reg avec les chemins d’accès appropriés. Par défaut, BizTalk Server est installé dans le répertoire %ProgramFiles(x86)%\Microsoft BizTalk Server\ sur les ordinateurs qui exécutent une version 64 bits de Windows. Mettez à jour les chemins associés aux valeurs "InboundAssemblyPath", "OutboundAssemblyPath" et "AdapterMgmtAssemblyPath" afin de pointer vers l'emplacement correct des fichiers spécifiés.
Important
Si vous installez BizTalk sur un ordinateur 64 bits, remplacez toutes les instances de l’entrée de Registre HKEY_CLASSES_ROOT\CLSID\ en HKEY_CLASSES_ROOT\Wow6432Node\CLSID\ dans le fichier de Registre StaticAdapterManagement.reg .
Dans la boîte de dialogue Éditeur du Registre , cliquez sur Oui pour ajouter l’exemple d’adaptateur au Registre, puis cliquez sur OK.
Pour fermer Windows Explorer, dans le menu Fichier, cliquez sur Fermer.
Pour installer l’exemple d’adaptateur statique
Cliquez sur Démarrer, tous les programmes, Microsoft BizTalk Server 20xx, puis BizTalk Server Administration.
Dans la console d’administration BizTalk Server, cliquez pour développer BizTalk Server Administration, pour développer BizTalk Group, puis pour développer Paramètres de la plateforme.
Cliquez avec le bouton droit sur Adaptateurs, cliquez sur Nouveau, puis sur Adaptateur.
Dans la boîte de dialogue Ajouter un adaptateur , procédez comme suit.
Propriété Pour Nom Tapez Static. Adaptateur Sélectionnez Static DotNetFile dans la liste déroulante. Commentaire Exemple d’adaptateur de type. Cliquez sur OK.
L'adaptateur statique apparaît maintenant dans la liste des adaptateurs dans la fenêtre de droite de la console Administration de BizTalk.
Pour arrêter et redémarrer l'instance de l'hôte
Cliquez sur Démarrer, tous les programmes, Microsoft BizTalk Server 20xx, puis BizTalk Server Administration.
Dans la console Administration BizTalk Server, cliquez sur pour développer BizTalk Server Administration, sur BizTalk Group, sur Paramètres de plateforme, puis sur Instances hôtes. Sélectionnez l'application BizTalkServer dans le volet de droite.
Dans le volet de résultats, cliquez avec le bouton droit sur l’hôte instance (généralement, le nom de l’ordinateur), puis cliquez sur Redémarrer.
Exécution de cet exemple
Pour exécuter l'exemple d'adaptateur de fichiers
Cliquez sur Démarrer, pointez sur Tous les programmes, sur Accessoires, puis cliquez sur Windows Explorer.
Créez les dossiers suivants sur le lecteur d’installation BizTalk Server :
<lecteur> :\Temp
<lecteur> :\Temp\Send
<lecteur> :\Temp\Receive
Pour fermer Windows Explorer, dans le menu Fichier, cliquez sur Fermer.
Cliquez sur Démarrer, pointez sur Tous les programmes, sur Microsoft BizTalk Server 20xx, puis cliquez sur administration BizTalk Server.
Cliquez avec le bouton droit sur le nœud Administration BizTalk Server et sélectionnez Se connecter au groupe existant.
Dans la boîte de dialogue Se connecter à la base de données de configuration de BizTalk Server existante, procédez comme suit.
Notes
La base de données de gestion BizTalk est également appelée « base de données de configuration BizTalk ».
Propriété Pour SQL Server Tapez . (un point). Sauvegarde de la base de données Sélectionnez le nom de la base de données de gestion BizTalk qui a été créée par l'assistant Configuration. Le nom de base de données par défaut utilisé par l’Assistant Configuration est BizTalkMgmtDb. Cliquez sur OK.
Développez le nœud BizTalk Group[nom du serveur] dans la console d’administration BizTalk Server, développez le nœud Applications, développez le nœud Application BizTalk 1.
Cliquez avec le bouton droit sur le nœud Ports d’envoi , puis cliquez sur Nouveau, sélectionnez Statique One-Way Port d’envoi, puis cliquez sur OK.
Dans la boîte de dialogue Propriétés du port d’envoi, sélectionnez Général, puis procédez comme suit.
Propriété Pour Nom Type AdapterSend. Type de transport Sélectionnez Statique dans la liste déroulante, puis cliquez sur Configurer.
- Dans la zone Répertoire , tapez <drive> :\Temp\Send.
- Dans la zone Mode fichier , sélectionnez CréerNouveau.
- Dans la zone Nom de fichier , tapez %MessageID%.xml.
- Cliquez sur OK.
- Le champ URI doit afficher <drive> :\Temp\Send\%MessageID%.xml.Pipeline d’envoi Sélectionnez PassThruTransmit (Microsoft.BizTalk.DefaultPipelines.PassThruTransmit), puis cliquez sur OK. Sous le nœud Application BizTalk 1 , cliquez sur Ports de réception, puis sélectionnez Nouveau/One-Way Port de réception.
Dans la boîte de dialogue Créer un port de réception , dans la zone Spécifier le type de port de réception , sélectionnez Port de réception unidirectionnel dans la liste déroulante, puis cliquez sur OK.
Dans la boîte de dialogue Propriétés du port de réception, dans la zone Nom , tapez AdapterReceive, puis cliquez sur OK.
Sous le nœud Application BizTalk 1 , cliquez avec le bouton droit sur Emplacements de réception, puis sélectionnez Nouvel emplacement de réception / Unidirectionnel.
Dans la boîte de dialogue Sélectionner un port de réception , sélectionnez AdaptateurReceive , puis cliquez sur OK.
Dans la boîte de dialogue Propriétés de l’emplacement de réception, procédez comme suit.
Propriété Pour Nom Type AdapterReceiveLocation Type de transport Sélectionnez Statique dans la liste déroulante, puis appuyez sur Configurer pour accéder aux propriétés restantes. URI - Cliquez sur le bouton de sélection (...).
- Dans la zone Nombre de fichiers dans le lot , tapez 20.
- Dans la zone Répertoire , tapez <lecteur> :\Temp\Receive.
- Vérifiez que la propriété Masque de fichier est définie sur *.xml.
- Dans la zone Intervalle d’interrogation , tapez 5, puis cliquez sur OK.
- Vérifiez que l’étiquette d’URI contient <drive> :\Temp\Receive\*.xml.Gestionnaire de réception Sélectionnez BizTalkServerApplication dans la liste déroulante. Pipeline de réception Sélectionnez XMLReceive dans la liste déroulante. Cliquez sur OK.
Passez à Génération, déploiement et liaison de l’exemple d’adaptateur.
Création, déploiement et liaison de l'exemple d'adaptateur
Avant que l'adaptateur ne fonctionne, vous devez construire le projet, lier l'orchestration aux ports, et inscrire l'adaptateur.
Pour créer une clé de nom fort pour l'adaptateur statique
Démarrez l’invite de commandes Visual Studio.
À l’invite de commandes, remplacez le répertoire actif par le < répertoire Samples Path>\AdaptersDevelopment\File Adapter\BizTalk Project\Adapter Harness.
À l’invite de commandes, tapez sn –k AdapterHarness.snk, puis appuyez surENTER.
Cliquez sur OK.
Pour créer le projet d'atelier de test d'adaptateur
- Dans Explorateur de solutions, cliquez avec le bouton droit sur AdapterHarnessProject, puis cliquez sur Reconstruire.
Pour déployer le projet d'atelier de test d'adaptateur
Dans Explorateur de solutions, une fois le projet reconstruit, cliquez avec le bouton droit sur AdapterHarnessProject, puis cliquez sur Déployer.
Dans BizTalk Server console Administration, sélectionnez le projet que vous avez déployé, puis cliquez sur Actualiser.
Pour lier l'orchestration aux ports
Dans BizTalk Server console Administration, sous l’application BizTalk Server appropriée, développez le nœud Orchestrations.
Cliquez avec le bouton droit sur AdapterHarness.AdapterHarnessType, puis cliquez sur Lier.
Dans la boîte de dialogue Propriétés de liaison de port - AdapterHarness.AdapterHarnessType- Configurations de liaison , procédez comme suit.
Propriété Pour AdapterFileReceivePort Sélectionnez AdapterReceive dans la liste déroulante. AdapterFileSendPort Sélectionnez AdapterEnd dans la liste déroulante. Dans le volet gauche, cliquez sur Hôte.
Dans la zone Hôte , sélectionnez BizTalkServerApplication dans la liste déroulante, puis cliquez sur OK.
Passez à l’administration de l’exemple d’adaptateur.
Administration de l'exemple d'adaptateur
Vous terminez les tâches d'administration pour l'exemple d'adaptateur dans la console Administration de BizTalk.
Pour administrer l'exemple d'adaptateur de fichiers
Cliquez sur Démarrer, pointez sur Tous les programmes, sur Microsoft BizTalk Server 20xxxx, puis cliquez sur BizTalk Server Administration.
Dans le volet gauche, cliquez pour développer Applications, cliquez pour développer Application BizTalk 1, puis cliquez sur Emplacements de réception.
Vérifiez que le status AdapterReceive est Activé.
Si le status n’est pas Activé, cliquez avec le bouton droit sur AdapterReceive dans le volet droit, puis cliquez sur Activer.
Dans le volet gauche, cliquez sur Orchestrations et vérifiez que AdapterHarness.AdapterHarnessType est inscrit. Cliquez avec le bouton droit sur AdapterHarness.AdapterHarnessType, puis cliquez sur Inscrire (si AdapterHarness.AdapterHarnessType est déjà inscrit, l’option de menu Inscrire n’est pas disponible).
Cliquez avec le bouton droit sur AdapterHarness.AdapterHarnessType , puis sélectionnez Démarrer. Le status de cette orchestration doit passer à En cours d’exécution.
Passez à Test de l’exemple d’adaptateur.
Test de l'exemple d'adaptateur
Après avoir déployé l'exemple d'adaptateur, vous devez arrêter et redémarrer l'instance d'hôte. Il est extrêmement important que vous testiez l'exemple d'adaptateur avant de le mettre en production.
Pour arrêter et redémarrer l'instance de l'hôte
Dans la console d’administration BizTalk Server, cliquez pour développer BizTalk Server Administration, cliquez sur pour développer groupe BizTalk, sur Paramètres de plateforme, puis sur Instances d’hôte. Sélectionnez l'application BizTalkServer dans le volet de droite.
Cliquez avec le bouton droit sur l’hôte instance (généralement, le nom de l’ordinateur), puis cliquez sur Arrêter.
Le status de l’hôte instance passe à Arrêté.
Cliquez avec le bouton droit sur le instance hôte, puis cliquez sur Démarrer.
Le status de l’hôte instance devient En cours d’exécution.
Pour tester l'exécution de l'exemple d'adaptateur statique
Dans Windows Explorer, accédez au < répertoire Samples Path>\AdaptersDevelopment\File Adapter, puis copiez le fichier InstanceXML.xml dans le Presse-papiers.
Accédez à <drive> :\Temp\Receive et collez le fichier Instance.xml dans le dossier.
Si les adaptateurs de transmission et de réception fonctionnent, le fichier doit passer du <dossier drive> :\Temp\Receive au <dossier drive> :\Temp\Send .
Pour tester l'exemple de fonctionnalité d'assistant Ajout d'adaptateur pour l'exemple d'adaptateur statique
Dans Visual Studio, dans Explorateur de solutions, cliquez avec le bouton droit sur AdapterHarnessProject, pointez sur Ajouter, puis cliquez sur Ajouter des éléments générés.
Dans la boîte de dialogue Ajouter des éléments générés - AdaptateurHarnessProject , cliquez sur Ajouter des métadonnées d’adaptateur, puis sur Ouvrir.
La liste des adaptateurs inscrits apparaît.
Sélectionnez Static DotNetFile, puis cliquez sur Suivant.
L'organisation de service exposée par l'adaptateur apparaît.
Développez Organisation du service, Soins de santé, puis cliquez sur Administration.
Notez que l’éligibilité s’affiche différemment des autres nœuds. L’éligibilité est un nœud de service que vous pouvez sélectionner. Les autres nœuds sont des nœuds d'organisation qui ne décrivent pas de service spécifique.
Sélectionnez le nœud Éligibilité , puis cliquez sur Terminer.
BizTalk importe un fichier .odx et un fichier .xsd dans le projet.
Vous pouvez maintenant utiliser les schémas, les types de port, les opérations et les types de messages importés depuis l'adaptateur dans la planification du projet BizTalk.
Classes ou méthodes utilisées dans cet exemple
Interfaces : IBaseMessage, IPropertyBag, IBTTransportProxy
Classes (En provenance de l'adaptateur de base) : AsyncTransmitterEndpoint, AsyncTransmitter, BatchMessage, ControlledTermination, ReceiverEndpoint, DotNetFileCommonProperties, BatchOperationType
Commentaires
Après avoir terminé l’exemple d’adaptateur, vous pouvez modifier l’exemple d’adaptateur pour créer un adaptateur statique ou dynamique personnalisé Pour plus d’informations, consultez Configuration de l'Design-Time de l’adaptateur.
Voir aussi
Exemples d’adaptateurs- Utilisation
Inscription d’un adaptateur