Questo argomento si applica solo alla configurazione IBM Business Automation Workflow Advanced.

Risoluzione dei problemi relativi all'elaborazione di archiviazione e inoltro

Questo argomento descrive i problemi che è possibile riscontrare con l'elaborazione di archiviazione e inoltro.

Selezionare il problema riscontrato dalla seguente tabella:
Problema Fare riferimento al seguente
Si sono verificati problemi durante l'impostazione del qualificatore di memorizzazione e inoltro L'elaborazione del qualificatore di memorizzazione e inoltro funziona solo su interfacce asincrone
Si stanno verificando eccezioni di runtime qualificanti, ma gli eventi non vengono memorizzati L'archivio non viene attivato dalle eccezioni di tempo di esecuzione qualificanti
I messaggi sono ancora in fase di elaborazione anche se il widget Archivia e inoltra mostra che lo stato è impostato su Archivia (ambiente di distribuzione di rete) In un ambiente di distribuzione di rete, i messaggi vengono elaborati anche se lo stato di archiviazione e inoltro è impostato su Archivia
Il widget Archivia e inoltra mostra che lo stato è impostato su Inoltra, ma i messaggi non vengono elaborati da tutti i membri del cluster. (Ambiente di distribuzione della rete) In un ambiente di distribuzione della rete, i messaggi non vengono elaborati da tutti i membri del cluster anche se lo stato di archiviazione e inoltro è impostato su Inoltra

L'elaborazione del qualificatore di memorizzazione e inoltro funziona solo su interfacce asincrone

Il qualificatore di memorizzazione e inoltro deve essere specificato su un'interfaccia asincrona. L'archivio non può essere attivato se l'interfaccia viene richiamata in modo sincrono.

Di seguito sono riportate alcune linee guida (rispetto ai componenti) che consentono di determinare se l'interfaccia viene richiamata in modo sincrono o asincrono.
  • Esaminare il processo di business di breve durata e l'importazione richiamata. Ad esempio, JMS è un'importazione asincrona. Pertanto, viene chiamato in modo asincrona da un processo di breve esecuzione. HTTP è un'importazione sincrona. Pertanto, viene richiamato in modo sincrono.
  • I processi di lunga durata richiamano le importazioni in base allo stile di interazione preferito impostato sull'interfaccia dell'importazione. Esaminare lo stile di interazione impostato sull'interfaccia dell'importazione per verificare se è sincrono o asincrono.
    Nota: è possibile trovare questa impostazione nella scheda Dettagli dell'interfaccia.
  • I componenti POJO richiamano i componenti in base al codice scritto nel componente. Controllare il codice scritto nel componente per vedere se è sincrono o asincrono.
Inoltre, considerare le seguenti limitazioni:
  • Il qualificatore di memorizzazione e inoltro non può essere impostato su processi di lunga durata.
  • L'archiviazione e inoltro non possono essere impostati sulle esportazioni (tranne l'esportazione SCA).

L'archivio non è attivato da eccezioni di runtime qualificanti

Se il negozio non è stato attivato dalle eccezioni di runtime qualificanti, controllare quanto segue.
  • La specifica dell'eccezione nel qualificatore di memorizzazione e inoltro corrisponde all'eccezione che si verifica al runtime. Se la specifica dell'eccezione non corrisponde, la memorizzazione non viene attivata.
  • Il codice utente nel percorso non sta rilevando l'eccezione ed eseguendone il wrapping. Oppure, lo sta convertendo in un'eccezione diversa. L'eccezione ricevuta dalla funzione store - and - forward può essere visualizzata nei dettagli dell'eccezione per l'evento non riuscito.
  • Per il componente di destinazione per un evento non riuscito è impostato un qualificatore di archiviazione e inoltro. L'archiviazione viene attivata una volta generato un evento non riuscito. Se viene generato un evento non riuscito per un componente che è upstream dal componente su cui è impostato un qualificatore di archiviazione e inoltro, il componente di archiviazione e inoltro viene richiamato in modo sincrono e non asincrono. Se viene generato un evento non riuscito per un componente che è downstream dal componente del qualificatore store - and - forward, piuttosto che il componente con il qualificatore store - and - forward impostato su di esso, è presente un richiamo asincrono più vicino all'errore e il qualificatore store - and - forward deve essere spostato in tale componente.

In un ambiente di distribuzione di rete, i messaggi vengono elaborati anche se lo stato di archiviazione e inoltro è impostato su Archivia

I messaggi potrebbero continuare ad essere elaborati da alcuni membri di un cluster, nonostante lo stato sia impostato su Archivia, se lo stato non è impostato su Archivia per ciascun membro del cluster. Per risolvere questo problema, verificare che lo stato sia impostato su Archivia per ogni membro del cluster nel widget Archivia e inoltra. Se i membri del cluster sono impostati su Inoltra, modificarli in Archivia.

Ciò potrebbe verificarsi anche se uno dei membri del cluster viene forzato al riavvio. Poiché lo stato dell'archivio non è persistente, ritorna allo stato Inoltra al riavvio. Per risolvere questo problema, modificare lo stato in Archivia per il modulo nel widget Archivia e inoltra.
Nota: quando il servizio diventa nuovamente disponibile, non impostare lo stato su Archivia immediatamente se si desidera che vengano elaborati nuovi eventi. Se si imposta lo stato su Archivia prima che i nuovi eventi abbiano la possibilità di essere elaborati, essi verranno memorizzati nella coda.

In un ambiente di distribuzione della rete, i messaggi non vengono elaborati da tutti i membri del cluster anche se lo stato di archiviazione e inoltro è impostato su Inoltra

I messaggi potrebbero continuare ad essere archiviati da alcuni membri di un cluster, nonostante lo stato sia impostato su Inoltra, se lo stato di archiviazione e inoltro non è impostato su Inoltra per ciascun membro del cluster. Per risolvere questo problema, verificare che lo stato sia impostato su Inoltra per il modulo nel widget Archivia e inoltra. Se i membri del cluster sono impostati su Archivia, modificarli in Inoltra.