Condividi tramite


Risolvere i problemi di installazione con l'adapter SAP

L'installazione di Microsoft BizTalk Adapter Pack copia i file binari del prodotto nel computer e registra le associazioni per ogni adapter. Questa sezione illustra le tecniche di risoluzione dei problemi per risolvere gli errori di installazione.

Registrazione dei messaggi per le azioni di installazione

Il programma di installazione bizTalk Adapter Pack esegue l'attività standard di installazione di BizTalk Adapter Pack. Inoltre, il programma di installazione esegue anche determinate azioni personalizzate, ad esempio la registrazione delle associazioni dell'adapter. È possibile registrare i messaggi sia per le azioni standard che per le azioni personalizzate eseguite dall'installazione.

  • Il programma di installazione di BizTalk Adapter Pack installa i file specifici dell'adapter usando un'identità del servizio gestito. Di conseguenza, la registrazione per l'installazione è la registrazione MSI standard.

  • I log per le azioni personalizzate eseguite dal programma di installazione sono disponibili in %TEMP%\adaptersetup.log. Se la traccia nel file di log ha esito negativo, le tracce sono disponibili anche nel registro eventi.

Il programma di installazione non riesce a registrare associazioni di adattatori o provider di dati

Problema

L'installazione guidata di Microsoft BizTalk Adapter Pack non riesce a registrare le associazioni dell'adapter o il provider di dati .NET Framework per mySAP Business Suite, ma procede con l'installazione dell'adapter.

Causa

Ciò potrebbe causare problemi con l'installazione di Windows Communication Foundation (WCF), l'installazione di Microsoft Windows Communication Foundation (WCF) Line of Business Sdk (LINE of Business) o il file machine.config danneggiato. Le associazioni dell'adattatore vengono scritte nel file machine.config.

Risoluzione

È necessario registrare manualmente l'associazione dell'adattatore SAP o il provider di dati per SAP.

Registrare le associazioni dell'adattatore o il provider di dati

  1. Passare al file machine.config nel computer. Ad esempio, in una piattaforma a 32 bit, il machine.config è disponibile nell'unità <>di sistema:\WINDOWS\Microsoft.NET\Framework\<version>\CONFIG.

    In questo percorso, <la versione> è la versione di .NET Framework.

  2. Aprire il file in un editor di testo.

  3. Per registrare l'associazione dell'adapter SAP:

    1. Cercare l'elemento "system.serviceModel" e aggiungere quanto segue:

      <client>  
        <endpoint binding="sapBinding" contract="IMetadataExchange" name="sap" />  
      </client>  
      
    2. Cercare l'elemento "bindingElementExtensions" in system.serviceModel\extensions.

    3. Cercare l'associazione dell'adattatore SAP mancante. Aggiungere la sezione seguente nel nodo "bindingElementExtensions".

      Per l'adapter SAP aggiungere:

      <add name="sapAdapter" type="Microsoft.Adapters.SAP.SAPAdapterExtensionElement,Microsoft.Adapters.SAP, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />  
      
    4. Cercare l'elemento "bindingExtensions" in system.serviceModel\extensions.

    5. Cercare l'associazione dell'adattatore SAP mancante. Aggiungere la sezione seguente nel nodo "bindingExtensions".

      Per l'adapter SAP aggiungere:

      <add name="sapBinding" type="Microsoft.Adapters.SAP.SAPAdapterBindingSection,Microsoft.Adapters.SAP, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />  
      

      Nota

      Per informazioni su come determinare la chiave pubblica, vedere Determinazione della chiave pubblica e della versione.

  4. Per registrare il provider di dati per SAP:

    1. Cercare l'elemento "DbProviderFactories" nel nodo "system.data".

    2. Cercare il provider di dati mancante per SAP. Aggiungere la sezione seguente nel nodo "DbProviderFactories".

      Per provider di dati per SAP, aggiungere:

      <add name="SAPClient Data Provider" invariant="Microsoft.Data.SAPClient" description=".NET Framework Data Provider for mySAP Business Suite" type="Microsoft.Data.SAPClient.SAPClientFactory,Microsoft.Data.SAPClient, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />  
      
  5. Salvare e chiudere il file machine.config.

Determinazione della chiave pubblica e della versione

Seguire questa procedura per determinare la chiave pubblica per l'adattatore SAP o il provider di dati per SAP.

  1. Passare alla directory di Windows, in genere C:\WINDOWS\assembly.

  2. Fare clic con il pulsante destro del mouse sulla DLL per cui si vuole usare la chiave pubblica e quindi scegliere Proprietà. La tabella seguente elenca il nome delle DLL per l'adattatore SAP e il provider di dati per SAP.

    Adapter/Provider di dati Nome della DLL
    Adapter per SAP Microsoft.Adapters.SAP
    Provider di dati per SAP Microsoft.Data.SAPClient
  3. Nella scheda Generale il valore con l'etichetta Token chiave pubblica specifica la chiave pubblica per la DLL. Analogamente, il valore rispetto all'etichetta Version specifica il numero di versione per la DLL.

  4. Copiare la chiave pubblica e quindi fare clic su Annulla.

Nessun errore valido per l'installazione di adattatori

Problema

L'uso del plug-in Add Adapter Service Reference di Visual Studio o del componente aggiuntivo Consume Adapter Service BizTalk Project da Visual Studio in un computer a 64 bit che esegue una versione a 64 bit del BizTalk Adapter Pack genera l'errore seguente:

No valid adapters are installed on this machine  

Causa

L'adapter SAP è un'associazione personalizzata WCF, registrata in System.ServiceModel nel file machine.config. Una piattaforma a 64 bit ha due file machine.config, uno usato dalle applicazioni a 32 bit e l'altro usato dalle applicazioni a 64 bit. Pertanto, quando si installa la versione a 64 bit di BizTalk Adapter Pack, l'installazione guidata registra le associazioni nella versione a 64 bit del file machine.config. Tuttavia, Visual Studio viene eseguito come processo a 32 bit e quindi quando si avvia il componente aggiuntivo Consume Adapter Service da Visual Studio, il plug-in verifica la presenza delle associazioni nella versione a 32 bit del file machine.config e genera un errore.

Risoluzione

  • Installare sia le versioni a 32 bit che a 64 bit di BizTalk Adapter Pack in un'installazione di WCF LOB Adapter SDK a 64 bit.

    Importante

    È necessario avere solo un'installazione di WCF LOB Adapter SDK a 64 bit. L'installazione side-by-side di WCF LOB Adapter SDK a 32 bit e a 64 bit in un singolo computer non è supportata.

  • Aggiungere sia le versioni a 32 bit che a 64 bit delle DLL client per l'adattatore SAP (ad esempio librfc32u.dll) alla variabile PATH. La versione a 32 bit delle DLL deve essere aggiunta alla cartella C:\Windows\SysWow64. La versione a 64 bit delle DLL deve essere aggiunta alla cartella C:\Windows\System32.

    Importante

    Se l'adattatore (32 o 64 bit) è in esecuzione in un computer con un sistema operativo a 64 bit e si usa l'adattatore per scrivere un'applicazione, è necessario contrassegnare l'applicazione sullo stesso tipo (32 o 64 bit) come adattatore. Inoltre, la versione di RFC SDK (32 o 64 bit) deve essere uguale alla versione dell'adattatore (32 o 64 bit).

    Ad esempio, se un adattatore a 32 bit è in esecuzione in un computer con un sistema operativo a 64 bit, l'applicazione client dell'adattatore deve essere contrassegnata come a 32 bit.

    Per altre informazioni sulle DLL client SAP, vedere Installare RFC personalizzati per il provider di dati per SAP.

Errore di associazione non valido durante la configurazione delle porte dell'adattatore SAP

Problema

Quando si tenta di configurare una porta per l'adattatore nella console di amministrazione di BizTalk Server, viene visualizzato l'errore seguente:

"Unable to create binding configuration element for editing. Check the values of the BindingType and BindingConfiguration properties.  
(Microsoft.Biztalk.Adapter.Wcf.Converters.CreateBindingException) Unable to get binding type for binding extension "sapBinding".  
Verify the binding extension is registered in machine.config."  

Causa

L'adapter SAP è un'associazione personalizzata WCF, registrata in System.ServiceModel nel file machine.config. Una piattaforma a 64 bit ha due file machine.config, uno usato dalle applicazioni a 32 bit e l'altro usato dalle applicazioni a 64 bit. Pertanto, quando si installa la versione a 64 bit di BizTalk Adapter Pack, l'installazione guidata registra le associazioni nella versione a 64 bit del file machine.config. Tuttavia, BizTalk Server console di amministrazione viene eseguito come processo a 32 bit e quindi quando si configura una porta per l'adattatore, controlla le associazioni nella versione a 32 bit del file machine.config e genera un errore.

Risoluzione

  • Installare sia le versioni a 32 bit che a 64 bit di BizTalk Adapter Pack in un'installazione di WCF LOB Adapter SDK a 64 bit.

    Importante

    È necessario avere solo un'installazione di WCF LOB Adapter SDK a 64 bit. L'installazione side-by-side di WCF LOB Adapter SDK a 32 bit e a 64 bit in un singolo computer non è supportata.

  • Aggiungere sia le versioni a 32 bit che a 64 bit delle DLL client per l'adattatore SAP (ad esempio librfc32u.dll) alla variabile PATH. La versione a 32 bit delle DLL deve essere aggiunta alla cartella C:\Windows\SysWow64. La versione a 64 bit delle DLL deve essere aggiunta alla cartella C:\Windows\System32.

    Importante

    Se l'adattatore (32 o 64 bit) è in esecuzione in un computer con un sistema operativo a 64 bit e si usa l'adattatore per scrivere un'applicazione, è necessario contrassegnare l'applicazione sullo stesso tipo (32 o 64 bit) come adattatore. Inoltre, la versione di RFC SDK (32 o 64 bit) deve essere uguale alla versione dell'adattatore (32 o 64 bit).

    Ad esempio, se un adattatore a 32 bit è in esecuzione in un computer con un sistema operativo a 64 bit, l'applicazione client dell'adattatore deve essere contrassegnata come a 32 bit.

    Per altre informazioni sulle DLL client SAP, vedere Installare RFC personalizzati per il provider di dati per SAP.

Vedere anche

Risolvere i problemi relativi alla scheda SAP