Partager via


Configurer un client WCF pour un système Siebel

Une fois que vous avez généré la classe de client WCF, vous pouvez créer un client WCF (instance) et appeler ses méthodes pour utiliser l’adaptateur Siebel. Pour plus d’informations sur la façon de générer la classe de client WCF et le code d’assistance pour les opérations exposées par l’adaptateur Microsoft BizTalk pour Siebel eBusiness Applications, consultez Générer un client WCF ou un contrat de service WCF pour les artefacts de solution Siebel.

Pour créer le client WCF, vous devez spécifier une adresse de point de terminaison et une liaison. L’adresse du point de terminaison doit contenir un URI de connexion Siebel valide, et la liaison doit être une instance d’une liaison Siebel (SiebelBinding). Pour plus d’informations sur l’URI de connexion Siebel, consultez Se connecter au système Siebel dans Visual Studio.

Vous pouvez spécifier la liaison Siebel et l’adresse du point de terminaison dans votre code ou dans un fichier de configuration. Lorsque vous utilisez le plug-in Visual Studio Add Adapter Service pour générer la classe de client WCF, un fichier de configuration (app.config) est également créé pour votre projet. Ce fichier contient des paramètres de configuration qui reflètent les propriétés de liaison et les informations de connexion (à l’exception des informations d’identification) que vous avez spécifiées lorsque vous vous êtes connecté au système Siebel avec le plug-in Add Adapter Service Reference.

Spécification de la liaison et de l’adresse de point de terminaison dans le code

Le code suivant montre comment créer un client WCF en spécifiant la liaison et l’adresse de point de terminaison dans le code. Il est recommandé de spécifier les informations d’identification Siebel à l’aide de la propriété ClientCredentials du client WCF plutôt que dans l’URI de connexion fourni pour l’adresse du point de terminaison.

// A WCF client that targets the TimeStamp business service is created  
// by using a binding object and endpoint address  
SiebelBinding sblBinding = new SiebelBinding();  
EndpointAddress sblAddress = new EndpointAddress("siebel://Siebel_server:1234?SiebelObjectManager=obj_mgr&SiebelEnterpriseServer=ent_server&Language=enu");  
  
BusinessServices_TimeStamp_OperationClient client =   
    new BusinessServices_TimeStamp_OperationClient(sblBinding, sblAddress);  
  
    client.ClientCredentials.UserName.UserName = "SADMIN";  
    client.ClientCredentials.UserName.Password = "SADMIN";  
  
    client.Open();  

Spécification de la liaison et de l’adresse de point de terminaison dans un fichier de configuration

Le code suivant montre comment créer un client WCF en spécifiant la liaison et l’adresse de point de terminaison dans un fichier app.config.

// A WCF client that targets the TimeStamp business service is created  
// by specifying the client endpoint information in app.config  
BusinessServices_TimeStamp_OperationClient client =   
    new BusinessServices_TimeStamp_OperationClient("SiebelBinding_BusinessServices_TimeStamp_Operation");  
  
client.ClientCredentials.UserName.UserName = "SADMIN";  
client.ClientCredentials.UserName.Password = "SADMIN";  
  
client.Open();  

Fichier App.config

Le code XML suivant montre le fichier de configuration créé pour le service d’entreprise TimeStamp par le plug-in Add Adapter Service Reference. Ce fichier contient la configuration du point de terminaison client référencée dans l’exemple précédent.

<?xml version="1.0" encoding="utf-8"?>  
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">  
    <system.serviceModel>  
        <bindings>  
            <siebelBinding>  
                <binding name="SiebelBinding" closeTimeout="00:01:00" openTimeout="00:01:00"  
                    receiveTimeout="00:10:00" sendTimeout="00:01:00" enableBizTalkCompatibilityMode="false"  
                    enablePerformanceCounters="false" enableConnectionPooling="true"  
                    maxConnectionsPerSystem="5" idleConnectionTimeout="00:01:00"  
                    acceptCredentialsInUri="false" />  
            </siebelBinding>  
        </bindings>  
        <client>  
            <endpoint address="siebel://Siebel_server:1234?SiebelObjectManager=obj_mgr&SiebelEnterpriseServer=ent_server&Language=enu"  
                binding="siebelBinding" bindingConfiguration="SiebelBinding"  
                contract="BusinessServices_TimeStamp_Operation" name="SiebelBinding_BusinessServices_TimeStamp_Operation" />  
        </client>  
    </system.serviceModel>  
</configuration>  

Si un projet a plusieurs clients WCF, plusieurs entrées de point de terminaison client sont définies dans le fichier de configuration. Chaque entrée de client WCF aura un nom unique en fonction de sa configuration de liaison et de l’artefact Siebel cible ; par exemple, « SiebelBinding_BusinessServices_TimeStamp_Operation ». Si vous vous connectez plusieurs fois pour créer les clients WCF dans votre projet, plusieurs entrées de configuration de liaison seront créées, une pour chaque connexion. Ces entrées de configuration de liaison seront nommées de la manière suivante : SiebelBinding, SiebelBinding1, SiebelBinding2, etc. Chaque entrée de point de terminaison client créée lors d’une connexion spécifique référencera l’entrée de liaison créée pendant cette connexion.

Voir aussi

Développer des applications Siebel à l’aide du modèle de service WCF