Configurer une liaison cliente pour Oracle E-Business Suite
Après avoir généré la classe de client WCF, vous pouvez créer un client WCF (instance) et appeler ses méthodes pour consommer l’adaptateur Oracle E-Business.
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 Oracle E-Business Suite valide, et la liaison doit être une instance d’une liaison Oracle E-Business Suite (OracleEBSBinding). Pour plus d’informations sur l’URI de connexion Oracle E-Business Suite, consultez Créer une connexion à Oracle E-Business Suite. Nous vous recommandons de ne pas spécifier les informations d’identification de l’utilisateur dans le cadre de l’URI de connexion. Vous pouvez utiliser à la place la propriété ClientCredentials du client WCF, comme expliqué dans cette rubrique.
Vous pouvez spécifier la liaison Oracle E-Business Suite 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 Reference 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é à Oracle E-Business Suite avec le plug-in Add Adapter Reference Service.
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 à l’aide de la propriété ClientCredentials du client WCF.
//Create an Oracle EBS binding and set the binding properties
OracleEBSBinding binding = new OracleEBSBinding();
binding.OracleUserName = "myOracleEBSUser";
binding.OraclePassword = "myOracleEBSPassword";
binding.OracleEBSResponsibilityName = "Responsibility";
binding.OracleEBSOrganizationId = "204";
//Create the client endpoint
EndpointAddress address = new EndpointAddress("oracleebs://<oracleebs_instance_name>/");
//Create the client and specify the credentials
ConcurrentPrograms_ARClient client = new ConcurrentPrograms_ARClient(binding,address);
client.ClientCredentials.UserName.UserName = "myuser";
client.ClientCredentials.UserName.Password = "mypassword";
//Open the client
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.
//Create the client by specifying the endpoint name in the app.config. In this case, the binding properties
//must also be specified in the app.config.
ConcurrentPrograms_ARClient client = new ConcurrentPrograms_ARClient("OracleEBSBinding_ConcurrentPrograms_AR");
//Specify the credentials
client.ClientCredentials.UserName.UserName = "myuser";
client.ClientCredentials.UserName.Password = "mypassword";
client.Open();
Le code XML suivant montre le fichier de configuration créé pour le programme simultané de l’interface client 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>
<oracleEBSBinding>
<binding openTimeout="00:05:00" name="OracleEBSBinding" closeTimeout="00:01:00"
receiveTimeout="00:10:00" sendTimeout="00:01:00" clientCredentialType="Database"
inboundOperationType="Polling" metadataPooling="true" statementCachePurge="false"
statementCacheSize="10" pollWhileDataFound="false" pollingInterval="30"
useOracleConnectionPool="true" minPoolSize="1" maxPoolSize="100"
incrPoolSize="5" decrPoolSize="1" connectionLifetime="0" acceptCredentialsInUri="false"
useAmbientTransaction="true" notifyOnListenerStart="true"
notificationPort="-1" dataFetchSize="65536" longDatatypeColumnSize="32512"
skipNilNodes="true" maxOutputAssociativeArrayElements="32"
enableSafeTyping="false" insertBatchSize="20" useSchemaInNameSpace="true"
enableBizTalkCompatibilityMode="true">
<mlsSettings language="" dateFormat="" dateLanguage="" numericCharacters=""
sort="" territory="" comparison="" currency="" dualCurrency=""
iSOCurrency="" calendar="" lengthSemantics="" nCharConversionException="true"
timeStampFormat="" timeStampTZFormat="" timeZone="" />
</binding>
</oracleEBSBinding>
</bindings>
<client>
<endpoint address="oracleebs://ebs-70-12/" binding="oracleEBSBinding"
bindingConfiguration="OracleEBSBinding" contract="ConcurrentPrograms_AR"
name="OracleEBSBinding_ConcurrentPrograms_AR" />
</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 Oracle E-Business Suite cible. Si vous vous connectez plusieurs fois pour créer les clients WCF dans votre projet, plusieurs entrées de configuration de liaison sont créées, une pour chaque connexion. Ces entrées de configuration de liaison seront nommées de la manière suivante : OracleEBSBinding, OracleEBSBinding1, etc. Chaque entrée de point de terminaison client créée lors d’une connexion spécifique fait référence à l’entrée de liaison créée pendant cette connexion.
Voir aussi
Développer des applications Oracle E-Business Suite à l’aide du modèle de service WCF