Condividi tramite


Esercitazione 3: Esercitazione su AS2

In questa esercitazione verrà configurata una soluzione che consente di ricevere e inviare messaggi con codifica EDIINT/AS2 su un trasporto HTTP.

Funzionamento della soluzione dell'esercitazione

Verranno eseguite le operazioni seguenti:

  • Ricezione di un messaggio AS2 da un partner (Fabrikam)

  • Restituzione asincrona di una risposta MDN al partner

  • Elaborazione del payload EDI del messaggio AS2

  • Restituzione di un riconoscimento 997 al partner (Fabrikam) su AS2

  • Routing di un file XML contenente il payload del messaggio EDI a un'applicazione back-end dell'organizzazione principale (Contoso).

    Nota

    In questa soluzione non viene usata la firma o la crittografia per garantire la sicurezza dei messaggi AS2.

    Componenti dell'esercitazione

    Nella soluzione verranno usati gli elementi seguenti:

  • Filtro ISAPI di ricezione HTTP BTS per ricevere il messaggio AS2/EDI dal mittente (/Contoso/BTSHTTPReceive.dll).

  • Pagina Web ASPX per simulare il partner restituendo un riconoscimento 997 e un MDN (http://localhost/Fabrikam/Default.aspx).

  • File di progetto che verrà usato per distribuire uno schema 864 e altri schemi (Schemas.btproj).

  • Percorso di ricezione HTTP unidirezionale per ricevere il file EDI (Receive_AS2). Questo indirizzo di ricezione usa la pipeline AS2EdiReceive predefinita contenente il decodificatore AS2 e il disassembler EDI.

  • Porta di trasmissione HTTP dinamica per restituire un MDN asincrono (Send_Async_MDN). Questa porta di trasmissione usa la pipeline AS2Send contenente il codificatore AS2.

  • Porta di invio FILE statica unidirezionale per indirizzare il payload EDI in un file XML a una cartella back-end (Send_Payload_EdiXml). Questa porta di trasmissione usa la pipeline di trasmissione PassThruTransmit.

  • Porta di invio HTTP statica per restituire un riconoscimento 997 al partner su AS2 (Send_Async_997). Questa porta di trasmissione usa la pipeline AS2Send che include il codificatore AS2, ma non necessita dell'assembler EDI.

  • File di progetto che verrà usato per compilare un'applicazione per inviare il file EDI dal partner Fabrikam a BizTalk (Sender.csproj).

    Flusso dei messaggi

    Nella figura seguente viene illustrato il flusso messaggi nella soluzione completata:

    Flusso del messaggio dell'esercitazione AS2

    I componenti dell'esercitazione elaborano il messaggio come segue:

  1. Usare l'applicazionesender.exe per inviare il messaggio EDI/AS2 originale dal partner Fabrikam al computer BizTalk Server. Sender.exe invia il messaggio EDI/AS2 alla directory virtuale Contoso.

    Nota

    Gli eventi riportati nell'elenco possono verificarsi in un ordine diverso rispetto a quello visualizzato.

    Il messaggio di test è X12_00401_864.edi in \Programmi\Microsoft BizTalk Server 20xx\SDK\AS2 Tutorial.

  2. Il Receive_AS2 percorso di ricezione unidirezionale riceve il messaggio EDI da Fabrikam usando l'estensione ISAPI BTSHTTPReceive.dll per selezionare il file dalla directory virtuale Contoso. La pipeline di ricezione decodifica il messaggio AS2, disassembla l'interscambio EDI e quindi rilascia il messaggio XML nel MessageBox.

  3. La pipeline di ricezione genera un messaggio MDN per il messaggio AS2 e, poiché il messaggio MDN è configurato come asincrono, lo rilascia nel MessageBox.

  4. La pipeline di ricezione genera un riconoscimento 997 in risposta all'interscambio EDI e lo rilascia nel MessageBox.

  5. Il Send_Payload_EdiXml porta di invio statica recupera il payload EDI dal MessageBox, filtrando sul BTS. Proprietà contesto MessageType.

  6. La porta di trasmissione del payload invia il file XML contenente il payload EDI all'applicazione back-end Contoso, rappresentata dalla cartella \_EDIXMLToContoso. Questa porta di trasmissione usa una pipeline di trasmissione PassThruTransmit.

  7. La porta di trasmissione dinamica Send_Async_MDN seleziona l'MDN asincrona da MessageBox, filtrando nella proprietà contesto EdiIntAS.IsAS2AsynchronousMdn.

  8. La porta di trasmissione MDN restituisce il messaggio MDN alla cartella \_MDNToFabrikam. Poiché si tratta di una porta di trasmissione dinamica, userà l'indirizzo nella riga Receipt-Delivery-Option nell'intestazione del messaggio (http://localhost/Fabrikam/Default.aspx?Destination=_MDNToFabrikam) per instradare il messaggio alla cartella \_MDNToFabrikam.

  9. Il Send_Async_997 porta di invio seleziona il 997 da MessageBox, filtrando sul BTS. Proprietà contesto MessageType.

  10. La porta di trasmissione 997 usa il trasporto HTTP per inviare il messaggio 997 generato dalla pipeline di ricezione EdiReceive alla cartella \_997ToFabrikam. La porta di invio invia il messaggio alla pagina Fabrikam default.aspx usando l'URI http://localhost/Fabrikam/Default.aspx?Destination=_997ToFabrikam. La pagina default.aspx invia quindi il messaggio 997 alla cartella \_997ToFabrikam.

    Per eseguire questa esercitazione, è consigliabile avere una conoscenza approfondita degli argomenti seguenti:

  • Pipeline di BizTalk Server e componenti delle pipeline

  • Adapter HTTP

  • Porte e indirizzi di ricezione

  • Porte di trasmissione

Contenuto della sezione

Vedere anche

Esercitazioni su BizTalk Server