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

  1. Démarrez l’invite de commandes Visual Studio.

    Notes

    Exécutez l'invite de commandes en tant qu'administrateur.

  2. Remplacez le répertoire actif par le < répertoire Samples Path>\AdaptersDevelopment\BaseAdapter\v1.0.2.

  3. À 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.

  4. Remplacez le répertoire actif par le < répertoire Samples Path>\AdaptersDevelopment\File Adapter\Runtime.

  5. À l’invite de commandes, tapez sn –k DotNetFileAdapter.snk , puis appuyez sur ENTRÉE.

  6. À 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

  1. Cliquez sur Démarrer, pointez sur Tous les programmes, sur Accessoires, puis cliquez sur Windows Explorer.

  2. Accédez au < répertoire Samples Path>"\AdaptersDevelopment\File Adapter\Runtime », puis double-cliquez sur DotNetFile.sln.

  3. 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.

  4. Dans le menu Fichier , cliquez sur Quitter pour fermer Visual Studio.

Pour créer le projet de phase de conception d'adaptateur

  1. Dans Windows Explorer, accédez au < répertoire Samples Path>"\AdaptersDevelopment\File Adapter\Design Time\Adapter Management », puis double-cliquez sur AdapterManagement.sln.

  2. Dans Explorateur de solutions, cliquez avec le bouton droit sur AdapterManagement, puis cliquez sur Reconstruire.

  3. Dans le menu Fichier , cliquez sur Quitter pour fermer Visual Studio.

Pour inscrire l'exemple d'adaptateur statique

  1. Dans Windows Explorer, accédez au < répertoire Samples Path>"\AdaptersDevelopment\File Adapter ».

  2. 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 .

  3. Dans la boîte de dialogue Éditeur du Registre , cliquez sur Oui pour ajouter l’exemple d’adaptateur au Registre, puis cliquez sur OK.

  4. Pour fermer Windows Explorer, dans le menu Fichier, cliquez sur Fermer.

Pour installer l’exemple d’adaptateur statique

  1. Cliquez sur Démarrer, tous les programmes, Microsoft BizTalk Server 20xx, puis BizTalk Server Administration.

  2. 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.

  3. Cliquez avec le bouton droit sur Adaptateurs, cliquez sur Nouveau, puis sur Adaptateur.

  4. 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.
  5. 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

  1. Cliquez sur Démarrer, tous les programmes, Microsoft BizTalk Server 20xx, puis BizTalk Server Administration.

  2. 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.

  3. 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
  1. Cliquez sur Démarrer, pointez sur Tous les programmes, sur Accessoires, puis cliquez sur Windows Explorer.

  2. Créez les dossiers suivants sur le lecteur d’installation BizTalk Server :

    • <lecteur> :\Temp

    • <lecteur> :\Temp\Send

    • <lecteur> :\Temp\Receive

  3. Pour fermer Windows Explorer, dans le menu Fichier, cliquez sur Fermer.

  4. Cliquez sur Démarrer, pointez sur Tous les programmes, sur Microsoft BizTalk Server 20xx, puis cliquez sur administration BizTalk Server.

  5. Cliquez avec le bouton droit sur le nœud Administration BizTalk Server et sélectionnez Se connecter au groupe existant.

  6. 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.
  7. Cliquez sur OK.

  8. 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.

  9. 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.

  10. 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.
  11. Sous le nœud Application BizTalk 1 , cliquez sur Ports de réception, puis sélectionnez Nouveau/One-Way Port de réception.

  12. 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.

  13. Dans la boîte de dialogue Propriétés du port de réception, dans la zone Nom , tapez AdapterReceive, puis cliquez sur OK.

  14. 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.

  15. Dans la boîte de dialogue Sélectionner un port de réception , sélectionnez AdaptateurReceive , puis cliquez sur OK.

  16. 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.
  17. 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
  1. Démarrez l’invite de commandes Visual Studio.

  2. À l’invite de commandes, remplacez le répertoire actif par le < répertoire Samples Path>\AdaptersDevelopment\File Adapter\BizTalk Project\Adapter Harness.

  3. À l’invite de commandes, tapez sn –k AdapterHarness.snk, puis appuyez surENTER.

  4. 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
  1. Dans Explorateur de solutions, une fois le projet reconstruit, cliquez avec le bouton droit sur AdapterHarnessProject, puis cliquez sur Déployer.

  2. Dans BizTalk Server console Administration, sélectionnez le projet que vous avez déployé, puis cliquez sur Actualiser.

Pour lier l'orchestration aux ports
  1. Dans BizTalk Server console Administration, sous l’application BizTalk Server appropriée, développez le nœud Orchestrations.

  2. Cliquez avec le bouton droit sur AdapterHarness.AdapterHarnessType, puis cliquez sur Lier.

  3. 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.
  4. Dans le volet gauche, cliquez sur Hôte.

  5. 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
  1. Cliquez sur Démarrer, pointez sur Tous les programmes, sur Microsoft BizTalk Server 20xxxx, puis cliquez sur BizTalk Server Administration.

  2. Dans le volet gauche, cliquez pour développer Applications, cliquez pour développer Application BizTalk 1, puis cliquez sur Emplacements de réception.

  3. 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.

  4. 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).

  5. 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
  1. 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.

  2. 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é.

  3. 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
  1. Dans Windows Explorer, accédez au < répertoire Samples Path>\AdaptersDevelopment\File Adapter, puis copiez le fichier InstanceXML.xml dans le Presse-papiers.

  2. 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
  1. 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.

  2. 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.

  3. Sélectionnez Static DotNetFile, puis cliquez sur Suivant.

    L'organisation de service exposée par l'adaptateur apparaît.

  4. 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.

  5. 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