Informazioni sulla gestione delle sessioni di connessione
L'adapter Microsoft BizTalk per JD Edwards OneWorld crea una sessione di connessione per inviare una chiamata al server JD Edwards OneWorld. Alla conclusione della chiamata, la sessione viene inserita in un pool per essere riutilizzata in una chiamata successiva. L'adapter crea più sessioni di connessione per gestire chiamate simultanee al server JD Edwards OneWorld. Dal pool vengono periodicamente rimosse le sessioni non più necessarie.
L'adapter Microsoft BizTalk per JD Edwards OneWorld fornisce due proprietà del contesto del messaggio che consentono di specificare se le chiamate devono essere gestite nella stessa sessione.
Nome | Type | Predefinito |
---|---|---|
JDE.SessionID | Int | 0 |
JDE.ReserveSession | boolean | false |
Se la funzione di business richiede una sola chiamata al server JD Edwards OneWorld, la gestione delle sessioni non è necessaria. L'adapter può selezionare qualsiasi sessione disponibile e la sessione scelta rimane disponibile per tutte le chiamate successive. Poiché i valori predefiniti sono appropriati, in questo scenario è possibile ignorare le proprietà del contesto del messaggio.
Per alcune funzionalità di JD Edwards OneWorld, ad esempio quella relativa alla creazione degli ordini di vendita, sono necessarie più chiamate al server JD Edwards OneWorld. La prima chiamata a BeginDoc crea un ordine di vendita vuoto. Ogni chiamata successiva a EditLine aggiunge una voce all'ordine di vendita. Alla fine, la chiamata a EndDoc chiude l'ordine di vendita.
BeginDoc
EditLine
EditLine
...
EndDoc
Per avere esito positivo, è necessario che tutte le chiamate relative a un singolo ordine di vendita vengano inviate nella stessa sessione. Per ottenere tale risultato, è necessario assegnare proprietà del contesto del messaggio in modo da istruire l'adapter riguardo alla gestione della sessione. Per quanto riguarda l'esempio SalesOrder relativo agli ordini di vendita, i valori da assegnare alle proprietà del contesto del messaggio per gestire la sessione JD OneWorld sono i seguenti:
Funzione | SessionID | ReserveSession |
---|---|---|
BeginDoc | 0 | true |
EditLine | Copiato dalla risposta BeginDoc | true |
EditLine | Copiato dalla risposta BeginDoc | true |
EndDoc | Copiato dalla risposta BeginDoc | false |
Per quanto riguarda la prima chiamata, poiché SessionID è zero, l'adapter è libero di scegliere qualsiasi sessione disponibile.
L'adapter restituisce il valore SessionID utilizzato nella risposta BeginDoc.
La proprietà ReserveSession indica all'adapter di riservare la sessione alle successive chiamate che ne fanno esplicita richiesta. Poiché è riservata, la sessione non può essere riutilizzata accidentalmente da nessun'altra chiamata.
Le chiamate successive richiedono la sessione impostando SessionID sul valore restituito in BeginDoc.
La proprietà ReserveSession è impostata su true almeno fino all'ultima chiamata della serie.
L'ultima chiamata imposta la proprietà ReserveSession su false per rendere la sessione disponibile a qualsiasi chiamata successiva. L'orchestrazione, tuttavia, può decidere di mantenere la sessione per più chiamate.
Se non viene utilizzata per un certo periodo di tempo, la sessione verrà sottoposta a Garbage Collection, anche se per errore è ancora riservata.
Per ulteriori informazioni sulle proprietà del contesto del messaggio, fare riferimento alla documentazione di BizTalk Server.
Vedere anche
Uso delle proprietà di contesto dei messaggi
Come assegnare valori di proprietà di contesto del messaggio
Esercitazione: Uso dell'adapter BizTalk per JD Edwards OneWorld