HTTPRequestResponse
L'esempio HTTPRequestResponse illustra come usare il filtro Microsoft BizTalk Server Internet Server Application Programming Interface (ISAPI) per consentire a un'applicazione ASP.NET di comunicare con un'orchestrazione BizTalk Server.
In questo esempio, l'applicazione ASP.NET invia una richiesta al filtro ISAPI BizTalk Server. L'orchestrazione utilizza quindi il messaggio e lo restituisce all'applicazione ASP.NET mediante una risposta sincrona. È possibile ottenere l'integrazione tra l'orchestrazione BizTalk Server e l'applicazione ASP.NET usando il filtro ISAPI BizTalk Server.
In questo esempio, BizTalk Server e un ASP.NET messaggi di ordine di acquisto di scambio di applicazioni (PO) e di riconoscimento dell'ordine di acquisto usando la sequenza di passaggi seguente:
Un'applicazione ASP.NET, usando una richiesta HTTP, invia un messaggio di ordine di acquisto XML a BizTalk Server.
BizTalk Server riceve il messaggio DELL'ordine di acquisto XML e costruisce un messaggio di riconoscimento dell'ordine di acquisto XML e quindi invia di nuovo il messaggio all'applicazione ASP.NET nella risposta HTTP.
L'applicazione ASP.NET riceve la risposta di conferma e aggiorna il Web Form con le informazioni sullo stato estratte dalla risposta.
<>Percorso degli esempi\AdaptersUsage\HTTPRequestResponse\
Nella seguente tabella sono riportati i file inclusi nell'esempio e ne viene descritto lo scopo.
File | Descrizione |
---|---|
Cleanup.bat | Annulla la distribuzione degli assembly e li rimuove dalla Global Assembly Cache (GAC); rimuove le porte di trasmissione e ricezione; rimuove le directory virtuali di Microsoft Internet Information Services (IIS) in base alle necessità. |
HTTPRequestResponse.btproj, HTTPRequestResponse.sln | Forniscono i file di progetto e di origine per il progetto BizTalk che riceve la richiesta HTTP, elabora il messaggio di ordine di acquisto e invia la risposta. |
HTTPRequestResponseBinding.xml | Consente la configurazione automatica, ad esempio il binding delle porte. |
POAck.xsd, POSchema.xsd | Forniscono gli schemi per i file XML relativi rispettivamente all'ordine di acquisto e alla relativa conferma. |
POReceiveOrchestration.odx | Fornisce un'orchestrazione BizTalk Server che riceve l'ordine di acquisto, la elabora e rilascia l'acknowledgement dell'ordine di acquisto. |
Setup.bat | Compila e inizializza l'esempio. |
Nella cartella \RequestResponse: AssemblyInfo.cs, default.aspx, default.aspx.cs, Global.asax, Global.asax.cs, RequestResponse.csproj, RequestResponse.csproj.webinfo, RequestResponse.sln, Web.config |
Contiene file dell'applicazione ASP.NET fondamentali per l'esecuzione dell'esempio, tra cui file di progetto e di soluzione, file ASPX, file di origine di Microsoft Visual C# .NET e così via. |
Utilizzare la procedura riportata di seguito per compilare e inizializzare l'esempio HTTPRequestResponse.
In una finestra di comando passare alla seguente cartella:
<Percorso esempi>\AdaptersUsage\HTTPRequestResponse
Eseguire il file Setup.bat. Verranno eseguite le operazioni seguenti:
Compila e configura l'applicazione ASP.NET utilizzata nell'esempio.
Nota
Durante la creazione del pool di applicazioni in Gestione IIS, impostare la versione di DefaultAppPool .NET Framework su .Net Framework v4.0.
Compila e distribuisce l'orchestrazione BizTalk Server usata in questo esempio.
Compila e distribuisce i progetti di Microsoft Visual Studio per questo esempio.
Crea e associa le porte BizTalk Server necessarie.
Avvia l'orchestrazione BizTalk Server.
Importante
È necessario modificare il codice di esempio che implementa l'applicazione Web (Default.aspx.cs) in base all'ambiente in uso:
< http:// nome> server/<dir> virtuale/BTSHTTPReceive.dll dove
<servername>
è il nome del server Web in cui si esegue la registrazione e<
il dir>
virtuale è la directory virtuale in cui si trova questo file.Nota
Prima di provare a eseguire l'esempio, è necessario verificare che BizTalk non abbia segnalato errori durante il processo di compilazione e inizializzazione.
Nota
Se si sceglie di aprire e compilare i progetti dell'esempio senza eseguire il file Setup.bat, è necessario creare innanzitutto una coppia di chiavi con nome sicuro tramite l'Utilità Nome sicuro di .NET Framework (sn.exe) e utilizzarla per firmare gli assembly risultanti. È inoltre necessario rimuovere manualmente i riferimenti a default.aspx.resx e Global.asax.resx dal file RequestResponse.csproj prima di provare a compilare il progetto.
Nota
Per annullare le modifiche apportate da Setup.bat, eseguire Cleanup.bat. È necessario eseguire Cleanup.bat prima di eseguire Setup.bat una seconda volta.
Nota
È necessario configurare e abilitare IIS per l'utilizzo dell'adapter di ricezione HTTP. Per altre informazioni, vedere Come configurare IIS per un percorso di ricezione HTTP.
Il file setup.bat configura la directory virtuale dell'esempio per l'esecuzione nel pool di applicazioni IIS associato al sito Web predefinito. Per configurare la directory virtuale per questo esempio da eseguire nel contesto di un utente nei gruppi di utenti host isolati BizTalk e IIS_IURS , è necessario configurare la directory virtuale per l'esecuzione in un nuovo pool di applicazioni IIS. A tale scopo, eseguire la procedura seguente:
Nota
Se è già stato creato un nuovo pool di applicazioni per un altro esempio SDK, è possibile limitarsi all'esecuzione dell'ultimo passaggio descritto di seguito.
Fare clic sul pulsante Start, scegliere Tutti i programmi, Strumenti di amministrazione e quindi Gestione Internet Information Services (IIS).
In Gestione Internet Information Services (IIS) passare alla cartella Pool di applicazioni .
Fare clic con il pulsante destro del mouse sulla cartella Pool di applicazioni e scegliere Nuovo, Pool di applicazioni...
Immettere un nome per l'ID pool di applicazioni, ad esempio BizTalkSDKSamples, verificare che l'opzione Usa le impostazioni predefinite per il nuovo pool di applicazioni sia selezionata e fare clic su OK per creare il nuovo pool di applicazioni.
Fare clic con il pulsante destro del mouse sul nuovo pool di applicazioni e quindi scegliere Proprietà.
Fare clic sulla scheda Identità della finestra di dialogo delle proprietà e modificare l'identità in cui viene eseguito il pool di applicazioni in un utente membro del gruppo utenti utenti host isolato BizTalk . Questo utente deve anche essere membro del gruppo di utenti locale IIS_IURS .
Configurare la directory virtuale dell'esempio SDK per l'esecuzione nel nuovo pool di applicazioni. L'impostazione Pool di applicazioni è disponibile nella scheda Directory virtuale della finestra di dialogo Proprietà directory virtuale. La directory virtuale creata per questo esempio è HttpRequestResponseSample.
Utilizzare la procedura seguente per eseguire l'esempio HTTPRequestResponse.
In Internet Explorer passare a http://localhost/RequestResponse/.
Completare i campi necessari nel modulo Web e quindi fare clic su Effettua ordine per inviare l'ordine.
Osservare lo stato dell'ordine quando il Web Form viene aggiornato dopo la ricezione di una risposta.
L'estensione BTSHTTPReceiveISAPI usata in questo esempio è configurata per funzionare in un'installazione predefinita di un singolo computer. Per estendere questo esempio per altre configurazioni, vedere Adapter HTTP.
È possibile estendere questo esempio alle applicazioni necessarie per inviare dati a BizTalk Server tramite un modulo Web o tramite HTTP in generale. Estendendo la parte dell'applicazione ASP.NET di questo esempio, è possibile eseguire una query per altre informazioni ed eseguire altre operazioni di pre-elaborazione prima di inviare i dati a BizTalk Server.