Inviare e ricevere le pagine ASPX
Le pagine ASPX di Microsoft BizTalk Accelerator per RosettaNet (BTARN) sono le interfacce dirette tra BTARN e Internet. Le due pagine ASPX sono la pagina di ricezione (RNIFReceive.aspx) e la pagina di invio (RNIFSend.aspx). Ogni pagina ASPX è un'estensione della pipeline BTARN corrispondente. La pipeline richiede che la pagina ASPX gestisca le intestazioni RNIF (RosettaNet Implementation Framework). La pipeline esegue la maggior parte dell'elaborazione HTTP; Tuttavia, ogni pagina ASPX esegue l'elaborazione HTTP delle intestazioni RNIF. Le pagine aumentano la funzionalità nell'adattatore HTTP BizTalk Server.
Ogni pagina ASPX è un'applicazione Web ASP.NET senza interfaccia utente. Usano ASP.NET sicurezza Web per garantire una connessione sicura con le parti esterne. Forniscono un livello in cui è possibile implementare la tolleranza di errore, la scalabilità e i servizi a disponibilità elevata.
Il programma di installazione di BTARN installa una pagina RNIFSend.aspx e una pagina RNIFReceive.aspx in ogni distribuzione di BTARN. Quando l'iniziatore o il risponditore scambia messaggi con il partner commerciale, BTARN usa le pagine ASPX per inviare messaggi o ricevere messaggi dall'URL del partner. Se sia l'iniziatore che il risponditore usano BTARN, le due pagine ASPX dell'iniziatore scambiano messaggi con le due pagine ASPX del risponditore. Per altre informazioni, vedere la sottosezione "How Initiator and Responder ASPX Pages Interact" (Interazione tra le pagine ASPX dell'iniziatore e del risponditore) di seguito.
Pagina INVIA ASPX
La pagina RNIFSend.aspx riceve un messaggio dall'adapter HTTP BizTalk. Crea e aggiunge intestazioni RNIF al messaggio e quindi invia il messaggio al partner tramite Internet. L'adattatore HTTP chiama RNIFSend.aspx con il comando seguente:
http://localhost:<port number>/RNIFSend.aspx?<query string>
La stringa di query include i dati seguenti che la pagina di invio deve inviare il messaggio al partner e i dati che il partner deve elaborare il messaggio:
URL partner commerciale: http://www.<address.com>/RNIFReceive.aspx
Tipo di risposta: sincronizzazione o asincrona
Versione RNIF: 1.1 o 2.0.
L'adapter HTTP BizTalk invia un messaggio MIME generato dalla pipeline di trasmissione BTARN alla pagina RNIFSend.aspx dell'iniziatore. RNIFSend.aspx elabora il messaggio come segue:
La pagina di invio esegue la convalida del messaggio.
La pagina di invio crea un'intestazione MIME (Multipurpose Internet Mail Extensions) in base al tipo di contenuto, alla lunghezza, all'ID e alla versione MIME. Aggiunge l'intestazione MIME e i limiti MIME superiori e inferiori al messaggio.
Per RNIF 2.01, la pagina di invio imposta le proprietà dell'intestazione HTTP come indicato di seguito:
Imposta la proprietà X-RN-Version sulla versione immessa nella proprietà Version delle impostazioni di configurazione del processo.
Imposta la proprietà X-RN-ResponseType su sync o async, a seconda dell'impostazione della proprietà IsSynchronous nelle impostazioni di configurazione del processo.
Imposta la proprietà Content-Length sulle dimensioni del messaggio completo.
Usando un HTTP Post, la pagina di invio invia il messaggio all'URL di destinazione del partner, come impostato nelle impostazioni URL azione o URL segnale nel contratto tra partner commerciali.
La pagina di invio attende la risposta HTTP. Quando riceve la risposta, la instrada all'adapter HTTP.
Se la connessione è asincrona, la pagina di invio chiude la connessione e la relativa elaborazione è stata completata.
Se la connessione è sincrona, la pagina di invio mantiene aperta la connessione per un messaggio restituito. Dopo aver ricevuto il messaggio, esegue la stessa elaborazione eseguita da una pagina RNIFReceive.aspx su un messaggio ricevuto, invia il messaggio ricevuto all'adapter HTTP e quindi chiude la connessione.
Pagina ASPX di ricezione
La pagina RNIFReceive.aspx riceve un messaggio HTTP dal partner tramite Internet. Elabora, convalida e rimuove le intestazioni RNIF e invia il messaggio all'adapter HTTP. Il messaggio ricevuto dalla pagina di ricezione deve essere conforme al trasporto HTTP RNIF. La pagina di ricezione elabora i messaggi come segue:
La pagina RNIFReceive.aspx del risponditore riceve il messaggio dall'iniziatore. Il messaggio contiene l'intestazione MIME e i limiti superiori e inferiori.
La pagina di ricezione convalida l'intestazione MIME.
La pagina di ricezione rimuove l'intestazione e i limiti MIME dal messaggio.
La pagina di ricezione invia il messaggio all'adapter HTTP usando il percorso di ricezione HTTP. La pagina di ricezione riceve una risposta HTTP e restituisce la risposta HTTP alla pagina di invio dell'iniziatore.
Se la connessione è asincrona, la pagina di ricezione chiude la connessione.
Se la connessione è sincrona, la pagina di ricezione mantiene aperta la connessione, in attesa di un messaggio restituito.
Dopo aver ricevuto il messaggio restituito dall'adapter HTTP, la pagina di ricezione esegue la stessa elaborazione eseguita da una pagina RNIFSend.aspx e invia il messaggio restituito alla pagina di invio dell'iniziatore. Dopo aver ricevuto la risposta HTTP, la connessione viene chiusa.
Interazione tra le pagine ASPX dell'iniziatore e del risponditore
Se sia l'iniziatore che il risponditore usano BTARN, le quattro pagine ASPX dell'iniziatore e del risponditore interagiscono in modo diverso a seconda che le connessioni siano asincrone o sincrone e se i messaggi siano a azione singola o doppia azione. Le sottosezioni seguenti descrivono il set completo di interazioni.
Azione doppia asincrona
Questo scenario prevede quattro connessioni HTTP separate, una per ogni passaggio:
La pagina di invio dell'iniziatore invia il messaggio di richiesta di azione alla pagina di ricezione del risponditore.
Nota
I passaggi 2 e 3 seguenti possono verificarsi nell'ordine inverso, a seconda del carico di sistema.
La pagina di invio del risponditore invia un messaggio di segnale di richiesta alla pagina di ricezione dell'iniziatore.
La pagina di invio del risponditore invia un messaggio di risposta dell'azione alla pagina di ricezione dell'iniziatore.
La pagina di invio dell'iniziatore invia un messaggio di segnale di risposta alla pagina di ricezione del risponditore.
Asincrona a singola azione
Questo scenario prevede due connessioni HTTP separate, una per ogni passaggio. Si noti che questo scenario è costituito dal passaggio 1 e 2 dello scenario asincrono a doppia azione.
La pagina di invio dell'iniziatore invia il messaggio di richiesta di azione alla pagina di ricezione del risponditore.
La pagina di invio del risponditore invia un messaggio di segnale di richiesta alla pagina di ricezione dell'iniziatore.
Doppia azione sincrona
Questo scenario prevede una connessione HTTP:
La pagina di invio dell'iniziatore invia il messaggio di richiesta di azione alla pagina di ricezione del risponditore.
La pagina di ricezione del risponditore invia un messaggio di risposta all'azione (o un'eccezione, se si verifica un problema) alla pagina di invio dell'iniziatore nella stessa connessione usata nel passaggio 1.
Sincrona a azione singola
Questo scenario prevede una connessione HTTP:
La pagina di invio dell'iniziatore invia il messaggio di richiesta di azione alla pagina di ricezione del risponditore.
La pagina di ricezione del risponditore invia un messaggio di segnale di richiesta (o un'eccezione, in caso di problema) alla pagina di invio dell'iniziatore nella stessa connessione.
Vedere anche
Elaborazione dei messaggi in BTARN
Pipeline di ricezione BTARN
Pipeline di trasmissione BTARN