Partage via


Résoudre les problèmes opérationnels liés à l’adaptateur Siebel

Cette section fournit un emplacement centralisé pour obtenir des informations sur les problèmes opérationnels que vous pouvez rencontrer lors de l’utilisation de l’adaptateur Microsoft BizTalk pour Siebel eBusiness Applications.

Activation du traçage

Pour plus d’informations sur la prise en charge du suivi dans l’adaptateur Siebel, consultez Suivi de diagnostic et Journalisation des messages pour l’adaptateur Siebel.

Problèmes connus

Voici quelques problèmes et solutions recommandées que vous pouvez rencontrer lors de l’utilisation de l’adaptateur Siebel.

Erreur lors du chargement des liaisons d’adaptateur

Problème

Lorsque vous essayez de démarrer le plug-in Visual Studio Add Adapter Service Reference ou le complément de projet BizTalk Du service de l’adaptateur, l’interface utilisateur graphique génère l’erreur suivante :

There was an error loading the binding, <binding name>, from your system configuration.  
ConfigurationErrorsException: Exception has been thrown by the target of an invocation.  

Cause

Lorsque vous démarrez le plug-in Add Adapter Service Reference ou le complément Consume Adapter Service, WCF charge les liaisons d’adaptateur pour toutes les cartes installées. À leur tour, les liaisons d’adaptateur dépendent du logiciel client d’application d’entreprise spécifique. Ainsi, vous pouvez rencontrer ce problème pour l’une des raisons suivantes ou les deux :

  • Le logiciel client métier requis n’est pas installé sur l’ordinateur sur lequel vous avez installé l’adaptateur.

  • Vous avez effectué une installation « Standard » ou « Complete » de l’adaptateur, qui installe tous les adaptateurs dans le pack d’adaptateurs BizTalk. Toutefois, les bibliothèques clientes peuvent être installées pour une seule application d’entreprise. Par conséquent, l’interface graphique utilisateur ne parvient pas à charger les liaisons pour les autres adaptateurs.

    Résolution :

  • Vérifiez que les versions clientes requises sont installées sur l’ordinateur sur lequel vous avez installé le pack d’adaptateurs BizTalk.

  • Veillez à effectuer une installation personnalisée des adaptateurs pour installer uniquement l’adaptateur dont vous avez besoin.

L’adaptateur Siebel ne s’affiche pas dans la liste des cartes dans BizTalk Server console d’administration

Problème

Contrairement à la version antérieure des adaptateurs fournis avec BizTalk Server, l’adaptateur Siebel fourni avec bizTalk Adapter Pack n’apparaît pas dans la liste des adaptateurs dans la console Administration BizTalk Server.

Cause

La dernière version de l’adaptateur Siebel est une liaison personnalisée WCF. Ainsi, bien que la console Administration BizTalk Server affiche l’adaptateur WCF-Custom, elle n’affiche pas les liaisons personnalisées WCF et, par conséquent, n’affiche pas l’adaptateur Siebel basé sur WCF.

Résolution :

Vous pouvez ajouter explicitement l’adaptateur Siebel à la console d’administration BizTalk Server en suivant les étapes mentionnées dans Ajouter l’adaptateur Siebel à BizTalk Server console d’administration.

Erreur lors de la connexion au système Siebel

Problème

Le plug-in Add Adapter Service Reference Plug-in ou Consume Adapter Service Add génère l’erreur suivante lorsque vous essayez de vous connecter au système Siebel :

Connecting to the system LOB has failed. Retrieving the COM class factory for component with CLSID {ID} failed due to the following error: 80040154  

Cause

Le client Web Siebel n’est peut-être pas installé sur l’ordinateur.

Résolution :

Vérifiez que la version prise en charge du client Web Siebel est installée sur l’ordinateur. Reportez-vous au guide d’installation pour connaître les versions client et serveur prises en charge pour Siebel. Le guide d’installation est disponible dans <lecteur> système :\Program Files\Microsoft BizTalk Adapter Pack\Documents.

Erreur lors de la récupération de XMLs avec plus de 65536 nœuds

Problème

L’adaptateur génère l’erreur suivante lors de la récupération de la sortie XML qui a plus de 65 536 nœuds.

Maximum number of items that can be serialized or deserialized in an object graph is '65536'.  
Change the object graph or increase the MaxItemsInObjectGraph quota.  

Cause

L’adaptateur ne peut pas sérialiser et désérialiser un objet avec plus de 65 536 éléments.

Résolution :

Vous pouvez résoudre ce problème en définissant le maxItemsInObjectGraph paramètre . Vous pouvez le définir de l’une des deux manières suivantes :

  • Définissez ce paramètre en modifiant le maxItemsInObjectGraph paramètre dans l’attribut ServiceBehavior de votre classe de service.

  • Ajoutez ce qui suit au fichier app.config de votre application.

    <behaviors>  
      <endpointBehaviors>  
        <behavior name="NewBehavior">  
          <dataContractSerializer maxItemsInObjectGraph="65536000" />  
        </behavior>  
      </endpointBehaviors>  
    </behaviors>  
    

    Un exemple de app.config se présente comme suit :

<?xml version="1.0" encoding="utf-8"?>  
<configuration>  
  <system.serviceModel>  
    <behaviors>  
      <endpointBehaviors>  
        <behavior name="NewBehavior">  
         <dataContractSerializer maxItemsInObjectGraph="65536000" />  
        </behavior>  
      </endpointBehaviors>  
    </behaviors>  
    <client>  
      <endpoint   behaviorConfiguration="NewBehavior" binding="siebelBinding"  
       contract="IOutboundContract" name="siebel_ICalculator" />  
    </client>  
  </system.serviceModel>  
</configuration>  

Erreur lors de la spécification d’un URI de connexion pour un port WCF-Custom dans BizTalk

Problème

BizTalk Server génère l’erreur suivante lorsque vous spécifiez un URI de connexion pour se connecter au système Siebel.

Error saving properties.  
(System.ArgumentException) The specified address is invalid.  
(System.ArgumentException) Invalid address;  
"<connection URI>" is not a well-formed absolute uri.  

Cause

L’URI de connexion n’adhère pas au format d’encodage standard. Par exemple, la valeur d’un paramètre peut contenir un espace.

Résolution :

Vérifiez que l’URI de connexion que vous spécifiez respecte le format d’encodage standard. Par exemple, un espace vide doit être remplacé par « %20 ».

Erreur lors de l’exécution de l’opération sur le système Siebel

Problème

L’adaptateur génère l’erreur suivante lors de l’exécution d’une opération sur le système Siebel à l’aide de BizTalk Server.

  • Pour BizTalk Server

    System.ArgumentNullException: Value cannot be null.  
    

    Cause

    L’action WCF pour le message n’est pas spécifiée. WCF nécessite qu’une action SOAP soit spécifiée pour chaque opération, ce qui informe l’adaptateur de l’opération à effectuer sur l’application métier.

    Résolution :

    Spécifiez l’action SOAP dans le port d’envoi ou en tant que propriété de contexte de message dans une orchestration BizTalk. Pour obtenir des instructions, consultez Configurer l’action SOAP pour Siebel. Consultez Messages et schémas de message pour obtenir la liste des actions pour chaque opération.

XmlReaderParsingException en raison d’un nom d’opération incorrect dans l’action spécifiée

Problème

La console Administration BizTalk Server génère l’erreur suivante lors de l’envoi de messages à un système Siebel :

Microsoft.ServiceModel.Channels.Common.XmlReaderParsingException: Invalid argument:  
<BtsActionMapping xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">  
  <Operation Name="<operation_name>" Action="<action>" />  
</BtsActionMapping>  

Cause

Si vous configurez un port WCF-Custom en important le fichier de liaison de port créé par le complément de projet BizTalk du service d’adaptateur de consommation, l’action dans le port est spécifiée au format suivant :

<BtsActionMapping>  
  <Operation Name="Op1" Action="http://MyService/Svc/Op1" />  
</BtsActionMapping>  

Dans le format précédent, le nom de l’opération est régi par l’opération que vous avez choisie lors de la génération du schéma. Par exemple, si vous avez généré le schéma pour une opération de requête sur un composant métier Siebel, le nom de l’opération dans l’action sera « Query ». Toutefois, le nom de l’opération dans le port logique créé dans l’orchestration BizTalk dans Visual Studio peut être différent.

Résolution :

Vérifiez que les noms des opérations dans le port logique (dans l’orchestration BizTalk dans Visual Studio) et le port physique (dans BizTalk Server console Administration) sont identiques.

L’application utilisant l’adaptateur Siebel ne se termine pas

Problème

Une application qui utilise l’adaptateur Siebel avec le client Siebel version 7.5 ne se termine pas.

Cause

Cela est dû à un problème client Siebel où le processus ne s’arrête pas lors de la déconnexion d’un serveur Siebel.

Résolution :

Vérifiez que le correctif 7.5.3.17 est installé pour le serveur Siebel, ainsi que le correctif rapide QF0H05.

L’adaptateur Siebel peut se bloquer si le serveur Siebel est redémarré

Problème

Si le serveur Siebel est redémarré alors que l’adaptateur Siebel envoie un message au serveur Siebel à l’aide de , l’adaptateur Siebel peut se bloquer.

Résolution :

Redémarrez le instance hôte d’application BizTalk. Pour ce faire, à partir de la console Administration BizTalk Server, dans l’arborescence de la console, développez Groupe BizTalk, Paramètres de plateforme, puis cliquez sur Instances d’hôte. Dans le volet droit, cliquez avec le bouton droit sur le nom d’hôte, puis sélectionnez Redémarrer.

L’adaptateur ne reconnaît pas l’action sur le port physique, même si vous utilisez le fichier de liaison généré par le complément Consume Adapter Service pour créer les ports

Problème

Après avoir utilisé le complément Consume Adapter Service pour générer le schéma d’une opération spécifique sur le système Siebel, le complément crée également un fichier de liaison de port. Vous pouvez importer ce fichier de liaison à l’aide de la console Administration BizTalk Server pour créer des ports physiques dans BizTalk Server. Toutefois, lorsque vous envoyez des messages au système Siebel à l’aide de ces ports, l’adaptateur ne comprend pas l’action spécifiée sur le port et génère une erreur similaire à ce qui suit :

Microsoft.ServiceModel.Channels.Common.UnsupportedOperationException: Incorrect Action   
<BtsActionMapping xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">  
  <Operation Name="<op_name>" Action="<action>" />  
</BtsActionMapping>. Correct the specified Action, or refer to the documentation on the allowed formats for the Actions.  

Cause

Lorsque vous créez des ports logiques dans une orchestration BizTalk, vous spécifiez certains noms pour les opérations sur ces ports ou vous utilisez simplement les noms par défaut tels que Operation_1, Operation_2, etc. Toutefois, dans le fichier de liaison généré par le complément Consume Adapter Service, le nom de l’opération est identique au nom de l’opération pour laquelle vous générez des métadonnées. Par exemple, si vous générez des métadonnées pour l’opération d’insertion sur le composant métier Compte, l’action est définie sur ce qui suit :

<Operation Name="Insert" Action="http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Insert" />  

Lorsque vous importez le fichier de liaison, la même action est définie sur le port physique. Ainsi, les noms d’opération sur le port logique (Operation_1, Operation_2, etc.) ne correspondent pas aux noms d’opération spécifiés dans l’action sur le port physique, ce qui entraîne une erreur.

Résolution :

Vérifiez que le nom de l’opération dans le port logique est identique au nom de l’opération spécifié dans le cadre de l’action dans le port physique. Effectuez l’une des opérations suivantes :

  • Remplacez le nom de l’opération dans le port logique dans l’orchestration BizTalk de Operation_1, etc. par l’opération pour laquelle vous générez des métadonnées, par exemple Insert.

  • Remplacez le nom de l’opération dans l’action sur le port physique par le nom de l’opération dans le port logique. Par exemple, vous pouvez modifier l’action dans le port physique pour qu’elle ressemble à ce qui suit :

    <Operation Name="Operation_1" Action="http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Insert" />  
    

L’adaptateur Siebel ne gère pas les objets Siebel avec des chaînes encodées XML dans le nom

Problème

L’adaptateur Siebel ne peut pas effectuer d’opérations impliquant des objets Siebel (objets métier, composants métier, services métier, liste de choix, méthodes, champs, arguments, etc.) qui ont des chaînes encodées XML dans leur nom. Par exemple, l’adaptateur Siebel ne peut pas appeler une méthode de service métier portant le nom Time_x0020_Stamp.

Résolution :

Vérifiez que les objets Siebel ne contiennent pas de chaînes encodées XML dans leur nom.

Erreur avec RootNode TypeName dans les projets BizTalk

Problème

Dans un projet BizTalk dans Visual Studio, si les schémas générés à partir du complément Consume Adapter Service contiennent des caractères ou des mots réservés non valides pour la propriété RootNode TypeName , l’erreur suivante se produit lors de la compilation du projet :

Node <node reference> - Specify a valid .NET type name for this root node.  
The current .NET type name of this root node is invalid (it is a reserved BizTalk Keyword or is an invalid C# identifier).  

Résolution :

  1. Cliquez avec le bouton droit sur le nœud jubé référencé dans l’erreur, puis sélectionnez Propriétés.

  2. Pour la propriété TypeName RootNode , supprimez les caractères non autorisés ou les mots réservés, par exemple point (.).

Avertissement de liaison non valide lors de l’utilisation de l’adaptateur dans Visual Studio

Problème

Lorsque vous utilisez l’adaptateur pour créer une application dans Visual Studio et que vous ouvrez le fichier de configuration (app.config) généré par l’adaptateur, un avertissement similaire au suivant s’affiche :

The element 'bindings' has invalid child element 'siebelBinding'. List of possible elements expected: 'basicHttpBinding, customBinding, ...  

Cause

Cet avertissement s’affiche car la liaison de l’adaptateur Siebel, siebelBinding, n’est pas une liaison standard fournie avec Windows Communication Foundation (WCF).

Résolution :

Vous pouvez ignorer cet avertissement sans problème.

Voir aussi

Résoudre les problèmes liés à l’adaptateur Siebel