Freigeben über


Behandeln von Betriebsproblemen mit dem Siebel-Adapter

Dieser Abschnitt enthält einen zentralen Speicherort für Informationen zu Betriebsproblemen, die bei der Verwendung des Microsoft BizTalk-Adapters für Siebel eBusiness-Anwendungen auftreten können.

Aktivieren der Ablaufverfolgung

Informationen zur Unterstützung der Ablaufverfolgung im Siebel-Adapter finden Sie unter Diagnoseablaufverfolgung und Nachrichtenprotokollierung für den Siebel-Adapter.

Bekannte Probleme

Im Folgenden finden Sie einige Probleme und empfohlene Lösungen, die bei der Verwendung des Siebel-Adapters auftreten können.

Fehler beim Laden der Adapterbindungen

Problem

Wenn Sie versuchen, das Visual Studio-Plug-In "Adapterdienstverweis hinzufügen" oder das BizTalk-Projekt-Add-In "Adapterdienst nutzen" zu starten, zeigt die grafische Benutzeroberfläche den folgenden Fehler an:

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

Ursache

Wenn Sie das Add Adapter Service Reference Plug-In oder das Add-In Consume Adapter Service starten, lädt WCF die Adapterbindungen für alle installierten Adapter. Die Adapterbindungen wiederum sind von der spezifischen Clientsoftware der Unternehmensanwendung abhängig. Dieses Problem kann also aus einem oder beiden der folgenden Gründe auftreten:

  • Die erforderliche BRANCHENclientsoftware ist nicht auf dem Computer installiert, auf dem Sie den Adapter installiert haben.

  • Sie haben eine "Typische" oder "Vollständige" Installation des Adapters durchgeführt, der alle Adapter im BizTalk-Adapterpaket installiert. Die Clientbibliotheken werden jedoch möglicherweise nur für eine Unternehmensanwendung installiert. Daher kann die GUI die Bindungen für die anderen Adapter nicht laden.

    Lösung

  • Stellen Sie sicher, dass die erforderlichen Clientversionen auf dem Computer installiert sind, auf dem Sie das BizTalk-Adapterpaket installiert haben.

  • Stellen Sie sicher, dass Sie eine benutzerdefinierte Installation der Adapter durchführen, um nur den von Ihnen benötigten Adapter zu installieren.

Der Siebel-Adapter wird nicht in der Liste der Adapter in BizTalk Server Verwaltungskonsole angezeigt.

Problem

Im Gegensatz zur früheren Version der Adapter, die mit BizTalk Server ausgeliefert wurden, wird der siebel-Adapter, der im Lieferumfang des BizTalk-Adapterpakets enthalten ist, nicht in der Liste der Adapter in der BizTalk Server Verwaltungskonsole angezeigt.

Ursache

Der neueste Siebel-Adapter ist eine benutzerdefinierte WCF-Bindung. Obwohl die BizTalk Server-Verwaltungskonsole den WCF-Custom-Adapter anzeigt, werden die benutzerdefinierten WCF-Bindungen nicht angezeigt, sodass der WCF-basierte Siebel-Adapter nicht angezeigt wird.

Auflösung

Sie können den Siebel-Adapter explizit der BizTalk Server-Verwaltungskonsole hinzufügen, indem Sie die unter Hinzufügen des Siebel-Adapters zu BizTalk Server Verwaltungskonsole beschriebenen Schritte ausführen.

Fehler beim Herstellen einer Verbindung mit dem Siebel-System

Problem

Das Add Adapter Service Reference Plug-In oder das Add-In Consume Adapter Service gibt den folgenden Fehler aus, wenn Sie versuchen, eine Verbindung mit dem Siebel-System herzustellen:

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

Ursache

Der Siebel-Webclient ist möglicherweise nicht auf dem Computer installiert.

Auflösung

Stellen Sie sicher, dass die unterstützte Version des Siebel-Webclients auf dem Computer installiert ist. Informationen zu unterstützten Client- und Serverversionen für Siebel finden Sie im Installationshandbuch. Die Installationsanleitung finden Sie unter <Systemlaufwerk>:\Programme\Microsoft BizTalk Adapter Pack\Documents.

Fehler beim Abrufen von XMLs mit mehr als 65536 Knoten

Problem

Der Adapter gibt beim Abrufen einer XML-Ausgabe mit mehr als 65536 Knoten den folgenden Fehler aus.

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.  

Ursache

Der Adapter kann ein Objekt mit mehr als 65536 Elementen nicht serialisieren und deserialisieren.

Auflösung

Sie können dieses Problem beheben, indem Sie den maxItemsInObjectGraph Parameter festlegen. Sie können dies auf eine der folgenden zwei Arten festlegen:

  • Legen Sie diesen Parameter fest, indem Sie den maxItemsInObjectGraph Parameter im ServiceBehavior -Attribut ihrer Dienstklasse ändern.

  • Fügen Sie der app.config-Datei Ihrer Anwendung Folgendes hinzu.

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

    Ein Beispiel app.config sieht wie folgt aus:

<?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>  

Fehler beim Angeben eines Verbindungs-URI für einen WCF-Custom Port in BizTalk

Problem

BizTalk Server gibt den folgenden Fehler an, wenn Sie einen Verbindungs-URI für die Verbindung mit dem Siebel-System angeben.

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

Ursache

Der Verbindungs-URI entspricht nicht dem Standardcodierungsformat. Beispielsweise kann der Wert für einen Parameter ein Leerzeichen enthalten.

Auflösung

Stellen Sie sicher, dass der angegebene Verbindungs-URI dem Standardcodierungsformat entspricht. Beispielsweise muss ein Leerzeichen durch "%20" ersetzt werden.

Fehler beim Ausführen des Vorgangs auf dem Siebel-System

Problem

Der Adapter gibt den folgenden Fehler aus, wenn ein Vorgang auf dem Siebel-System mit BizTalk Server ausgeführt wird.

  • Für BizTalk Server

    System.ArgumentNullException: Value cannot be null.  
    

    Ursache

    Die WCF-Aktion für die Nachricht ist nicht angegeben. WCF erfordert, dass für jeden Vorgang eine SOAP-Aktion angegeben wird, die den Adapter über den Vorgang informiert, der für die BRANCHENanwendung ausgeführt werden soll.

    Auflösung

    Geben Sie die SOAP-Aktion im Sendeport oder als Nachrichtenkontexteigenschaft in einer BizTalk-Orchestrierung an. Anweisungen finden Sie unter Konfigurieren der SOAP-Aktion für Siebel. Eine Liste der Aktionen für jeden Vorgang finden Sie unter Nachrichten und Nachrichtenschemas .

XmlReaderParsingException aufgrund eines falschen Vorgangsnamens in der angegebenen Aktion

Problem

Die BizTalk Server-Verwaltungskonsole gibt beim Senden von Nachrichten an ein Siebel-System den folgenden Fehler aus:

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>  

Ursache

Wenn Sie einen WCF-Custom Port konfigurieren, indem Sie die Portbindungsdatei importieren, die vom BizTalk-Projekt-Add-In "Adapterdienst nutzen" erstellt wurde, wird die Aktion im Port im folgenden Format angegeben:

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

Im obigen Format wird der Vorgangsname durch den Vorgang gesteuert, den Sie beim Generieren des Schemas ausgewählt haben. Wenn Sie beispielsweise ein Schema für einen Abfragevorgang für eine Siebel-Geschäftskomponente generiert haben, lautet der Vorgangsname in der Aktion "Query". Der Vorgangsname im logischen Port, der in der BizTalk-Orchestrierung in Visual Studio erstellt wurde, kann jedoch unterschiedlich sein.

Auflösung

Stellen Sie sicher, dass die Vorgangsnamen sowohl im logischen Port (in der BizTalk-Orchestrierung in Visual Studio) als auch im physischen Port (in BizTalk Server Verwaltungskonsole) identisch sind.

Anwendung, die den Siebel-Adapter verwendet, wird nicht beendet

Problem

Eine Anwendung, die den Siebel-Adapter mit Siebel-Clientversion 7.5 verwendet, wird nicht beendet.

Ursache

Dies liegt an einem Siebel-Clientproblem, bei dem der Prozess nicht beendet wird, wenn er sich von einem Siebel-Server abmeldet.

Lösung

Stellen Sie sicher, dass der Patch 7.5.3.17 für den Siebel-Server zusammen mit der Schnellkorrektur QF0H05 installiert ist.

Der Siebel-Adapter kann hängen bleiben, wenn der Siebel-Server neu gestartet wird

Problem

Wenn der Siebel-Server neu gestartet wird, während der Siebel-Adapter über eine Nachricht an den Siebel-Server sendet, hängt der Siebel-Adapter möglicherweise.

Auflösung

Starten Sie den BizTalk-Anwendungshost instance neu. Erweitern Sie dazu über die BizTalk Server-Verwaltungskonsole in der Konsolenstruktur bizTalk-Gruppe, erweitern Sie Plattformeinstellungen, und klicken Sie dann auf Hostinstanzen. Klicken Sie im rechten Bereich mit der rechten Maustaste auf den Hostnamen, und wählen Sie dann Neu starten aus.

Der Adapter erkennt die Aktion am physischen Port nicht, obwohl Sie die bindungsdatei verwenden, die vom Add-In "Adapterdienst nutzen" generiert wurde, um die Ports zu erstellen.

Problem

Nachdem Sie das Add-In Adapterdienst nutzen verwendet haben, um ein Schema für einen bestimmten Vorgang auf dem Siebel-System zu generieren, erstellt das Add-In auch eine Portbindungsdatei. Sie können diese Bindungsdatei mithilfe der BizTalk Server-Verwaltungskonsole importieren, um physische Ports in BizTalk Server zu erstellen. Wenn Sie jedoch Nachrichten mithilfe solcher Ports an das Siebel-System senden, versteht der Adapter die auf dem Port angegebene Aktion nicht und gibt einen Fehler ähnlich dem folgenden aus:

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.  

Ursache

Wenn Sie logische Ports in einer BizTalk-Orchestrierung erstellen, geben Sie bestimmte Namen für die Vorgänge an diesen Ports an, oder Sie verwenden einfach die Standardnamen wie Operation_1, Operation_2 usw. In der bindungsdatei, die vom Add-In Verbrauchsadapterdienst generiert wurde, ist der Vorgangsname jedoch mit dem Namen des Vorgangs identisch, für den Sie Metadaten generieren. Wenn Sie beispielsweise Metadaten für den Einfügevorgang für die Geschäftskomponente Konto generieren, wird die Aktion auf Folgendes festgelegt:

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

Wenn Sie die Bindungsdatei importieren, wird dieselbe Aktion für den physischen Port festgelegt. Daher stimmen die Vorgangsnamen auf dem logischen Port (Operation_1, Operation_2 usw.) nicht mit den Vorgangsnamen überein, die in der Aktion für den physischen Port angegeben sind, was zu einem Fehler führt.

Lösung

Stellen Sie sicher, dass der Vorgangsname im logischen Port mit dem Vorgangsnamen übereinstimmt, der als Teil der Aktion im physischen Port angegeben wurde. Führen Sie einen der folgenden Schritte aus:

  • Ändern Sie den Vorgangsnamen im logischen Port in BizTalk-Orchestrierung von Operation_1 usw. in den Vorgang, für den Sie Metadaten generieren, z. B. Einfügen.

  • Ändern Sie den Vorgangsnamen in der Aktion für den physischen Port in den Vorgangsnamen im logischen Port. Beispielsweise können Sie die Aktion im physischen Port so ändern, dass sie wie folgt aussieht:

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

Der Siebel-Adapter verarbeitet keine Siebel-Objekte mit XML-codierten Zeichenfolgen im Namen.

Problem

Der Siebel-Adapter kann keine Vorgänge mit Siebel-Objekten (Geschäftsobjekte, Geschäftskomponenten, Geschäftsdienste, Auswahlliste, Methoden, Felder, Argumente usw.) ausführen, die xml-codierte Zeichenfolgen in ihrem Namen enthalten. Beispielsweise kann der Siebel-Adapter keine Geschäftsdienstmethode mit dem Namen Time_x0020_Stamp aufrufen.

Auflösung

Stellen Sie sicher, dass die Siebel-Objekte keine XML-codierten Zeichenfolgen in ihrem Namen enthalten.

Fehler mit RootNode TypeName in BizTalk-Projekten

Problem

Wenn in einem BizTalk-Projekt in Visual Studio die schemas, die aus dem Add-In "Adapterdienst nutzen" generiert wurden, ungültige Zeichen oder reservierte Wörter für die RootNode TypeName-Eigenschaft enthalten, tritt beim Kompilieren des Projekts der folgende Fehler auf:

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

Auflösung

  1. Klicken Sie mit der rechten Maustaste auf den knoten, auf den im Fehler verwiesen wird, und wählen Sie Eigenschaften aus.

  2. Entfernen Sie für die RootNode TypeName-Eigenschaft alle ungültigen Zeichen oder reservierten Wörter, z. B. Punkt (.).

Warnung zur ungültigen Bindung bei Verwendung des Adapters in Visual Studio

Problem

Wenn Sie mit dem Adapter eine Anwendung in Visual Studio erstellen und die vom Adapter generierte Konfigurationsdatei (app.config) öffnen, wird eine Warnung ähnlich der folgenden angezeigt:

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

Ursache

Diese Warnung wird angezeigt, da die Siebel-Adapterbindung keine Standardbindung ist, siebelBindingdie mit windows Communication Foundation (WCF) ausgeliefert wird.

Auflösung

Sie können diese Warnung problemlos ignorieren.

Weitere Informationen

Problembehandlung beim Siebel-Adapter