Condividi tramite


Richiamare metodi di servizio business con oggetti di integrazione usando l'adattatore Siebel

L'adattatore Siebel consente ai client dell'adapter di richiamare i metodi di servizio aziendali che funzionano con gli oggetti di integrazione. Questi servizi aziendali in genere dispongono di parametri IN, OUT o IN OUT di tipo di dati "gerarchia" per inviare o ricevere dati dell'oggetto di integrazione.

L'adapter Siebel espone questi tipi gerarchici come stringhe. Questi valori stringa sono essenzialmente una stringa XML incapsulata in una sezione XML CDATA. La stringa XML è compatibile con lo schema XML dell'oggetto di integrazione che il client dell'adapter sta tentando di inviare o ricevere.

Esempio basato su questo argomento

Un esempio, SiebelAdapterIntegrationObjects, basato su questo argomento viene fornito anche con bizTalk Adapter Pack. Per altre informazioni, vedere Esempi per l'adapter Siebel.

Creazione di un'orchestrazione per richiamare i metodi del servizio business con oggetti di integrazione

La creazione di un'orchestrazione per richiamare un metodo di servizio aziendale che accetta i parametri dell'oggetto di integrazione è simile all'orchestrazione per richiamare qualsiasi altro servizio aziendale, come descritto in Invoke Business Service Methods Using BizTalk Server e l'adapter Siebel.

La differenza si trova nel messaggio di richiesta che si rilascia per l'orchestrazione. Questa differenza è dovuta al seguente:

  • Lo schema per il messaggio di richiesta è diverso perché si richiama un servizio aziendale diverso.

  • Il messaggio di richiesta contiene la stringa XML per l'oggetto di integrazione. Questo CODICE XML viene incapsulato in una sezione CDATA. È prima necessario generare lo schema per l'oggetto di integrazione e quindi creare un CODICE XML conforme allo schema. Questo XML deve essere passato all'interno della sezione CDATA del messaggio di richiesta inviato all'adapter.

    Dopo aver generato il codice XML conforme allo schema dell'oggetto di integrazione e incluso nel messaggio di richiesta, è necessario eliminare il messaggio di richiesta in un percorso FILE, proprio come per qualsiasi altra orchestrazione. Cercare il messaggio di risposta nell'altro percorso FILE.

Richieste e messaggi di risposta per richiamare il servizio business con oggetti di integrazione

Come accennato in precedenza, l'unica differenza per richiamare un servizio aziendale che accetta parametri dell'oggetto di integrazione è il messaggio di richiesta inviato all'adapter. Questa sezione fornisce istruzioni sui passaggi da eseguire per creare il messaggio di richiesta.

Per una migliore comprensione, prendere un servizio aziendale Siebel 'EAI Siebel Adapter' come esempio. Il servizio aziendale "EAI Siebel Adapter" opera su un oggetto di integrazione Siebel, 'Account di esempio'. È necessario eseguire le attività seguenti per creare il messaggio di richiesta per richiamare un metodo esposto dal servizio business 'EAI Siebel Adapter':

  • Generare lo schema per il servizio business dell'adapter Siebel EAI. Per generare lo schema, è necessario usare il componente aggiuntivo Use Adapter Service. Dopo aver generato lo schema, generare il codice XML conforme allo schema.

  • Generare lo schema per l'oggetto di integrazione. Usare Siebel Tools per generare lo schema per un oggetto di integrazione. Nell'interfaccia Siebel Tools selezionare l'oggetto di integrazione, ad esempio Account di esempio e fare clic su Genera schema. Durante la generazione dello schema, assicurarsi di:

    • L'elenco a discesa Selezionare un servizio business ha il valore "Generatore XSD XML EAI".

    • L'elenco a discesa Seleziona un tipo di busta ha il valore "Siebel Message Envelope".

      Per altre informazioni, vedere la documentazione di Siebel.

  • Creare un messaggio XML conforme allo schema dell'oggetto di integrazione. Un messaggio XML di esempio generato per l'oggetto di integrazione 'Account di esempio' è simile al seguente:

    <?xml version="1.0" encoding="UTF-16"?>  
    <SiebelMessage  MessageId="" IntObjectName="Sample Account" MessageType="Integration Object" IntObjectFormat="Siebel Hierarchical">  
      <ListOfSampleAccount>  
        <Account>  
          <CurrencyCode>USD</CurrencyCode>  
          <Location>Redmond</Location>  
          <Name>IntegrationObjectTest</Name>  
        </Account>  
      </ListOfSampleAccount>  
    </SiebelMessage>  
    
  • Passare questo messaggio XML come valore per l'elemento CDATA nel messaggio di richiesta per il metodo del servizio business. Un messaggio di richiesta di esempio contenente il messaggio XML precedente all'interno di un elemento CDATA è simile al seguente. Questa richiesta di esempio consiste nell'richiamare il metodo Insert per il servizio business "EAI Siebel Adapter".

    <Insert xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter/Operation">  
      <InsertRequestRecord />   
      <InsertInOutRecord>  
        <SiebelMessage xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter">  
          <![CDATA[ <?xml version="1.0" encoding="UTF-16"?>  
            <SiebelMessage  MessageId="" IntObjectName="Sample Account" MessageType="Integration Object" IntObjectFormat="Siebel Hierarchical">  
              <ListOfSampleAccount>  
                <Account>  
                  <CurrencyCode>USD</CurrencyCode>  
                  <Location>Redmond</Location>  
                  <Name>IntegrationObjectTest</Name>  
                </Account>  
              </ListOfSampleAccount>  
            </SiebelMessage>  
          ]]>   
         </SiebelMessage>  
      </InsertInOutRecord>  
    </Insert>  
    

    La risposta da Siebel per il messaggio di richiesta precedente è simile alla seguente:

    <?xml version="1.0" encoding="utf-8" ?>   
    <InsertResponse xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter/Operation">  
      <InsertResult>  
        <ErrorCode xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter">0x0</ErrorCode>   
        <ErrorContextIntComp xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter" />   
        <ErrorContextSearchSpec xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter" />   
        <ErrorSymbol xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter" />   
        <OMErrorCode xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter" />   
        <OMErrorSymbol xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter" />   
        <PrimaryRowId xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter">1-6SPSJ</PrimaryRowId>   
      </InsertResult>  
      <InsertInOutRecord>  
        <SiebelMessage xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter">  
          <![CDATA[ <?xml version="1.0" encoding="UTF-16"?>  
            <SiebelMessage  MessageId="" IntObjectName="Sample Account" MessageType="Integration Object" IntObjectFormat="Siebel Hierarchical">  
              <ListOfSampleAccount>  
                <Account>  
                  <CurrencyCode>USD</CurrencyCode>  
                  <Location>Redmond</Location>  
                  <Name>IntegrationObjectTest</Name>  
                </Account>  
              </ListOfSampleAccount>  
            </SiebelMessage>  
          ]]>   
         </SiebelMessage>  
      </InsertInOutRecord>  
    </InsertResponse>  
    

    Usando le funzionalità bizTalk, i client dell'adapter possono anche eseguire una convalida aggiuntiva del parametro IN e OUT dell'oggetto di integrazione nello schema dell'oggetto di integrazione (ottenuto da Siebel Tools).

Vedere anche

Sviluppare applicazioni BizTalk usando l'adapter Siebel
Sviluppare applicazioni Siebel