Comunicazione con applicazioni esterne tramite API REST

Utilizzare l'API REST con gli strumenti basati sul client per interagire con il prodotto da qualsiasi estensione personalizzata o applicazione esterna.

In Maximo® Asset Management, RMI (Remote Method Invocation) può essere utilizzato per interagire con il prodotto da estensioni personalizzate o applicazioni esterne. Tuttavia, RMI non è supportata all'esterno del processo del server Maximo nell'ambiente completamente inserito in un contenitore di Maximo Manage. Utilizzare l'API REST invece di RMI per le interazioni con il prodotto da estensioni personalizzate o applicazioni esterne.

Per facilitare l'uso dell'API REST, il prodotto fornisce un client HTTP di esempio, la classe com.ibm.tivoli.maximo.oslc.provider.RestClient. Questo client HTTP di esempio è una libreria di molti metodi utili e altre librerie.

Vantaggi dell'API REST per l'integrazione con il prodotto

L'API REST nel prodotto offre i seguenti vantaggi chiave agli amministratori dell'integrazione:
  • Un client API REST può essere scritto nel linguaggio scelto, mentre con RMI, è possibile scrivere solo nel linguaggio Java™ .
  • L'API REST promuove la facilità di personalizzazione e integrazione con le applicazioni client utilizzando le strutture oggetto.
  • L'API REST può utilizzare le chiavi API per l'autorizzazione e l'autenticazione. Tutte le comunicazioni con il prodotto possono essere effettuate con qualsiasi client HTTP di base, come il client HTTP RestClient di esempio incluso nel prodotto.
  • Le chiamate API REST ben progettate forniscono un'elevata scalabilità con meno traffico di rete. Diversi modi per progettare e codificare le chiamate API REST sono spiegati nelle seguenti sezioni.

Opzioni di codifica API REST

La codifica dell'API REST è generalmente ad un livello abbastanza alto, ma il prodotto offre opzioni per rendere il codice granulare se si richiede la granularità. È possibile codificare le chiamate API come più chiamate REST, chiamate REST di massa o chiamate REST che utilizzano script di automazione.

La quantità di traffico di rete generato può variare, a seconda del modo in cui si codifica l'interazione API REST per il client. Se le interazioni API REST non sono codificate correttamente, le prestazioni del client e del prodotto potrebbero essere influenzate negativamente.

Più chiamate REST individuali

Se si sta passando dall'utilizzo di RMI nelle versioni precedenti del prodotto, è possibile convertire le chiamate RMI in chiamate REST su base uno - a - uno. Tuttavia, RMI consente l'utilizzo dell'API granulare nell'SDK Java fornito con Maximo Manage, mentre le API REST sono di livello superiore. Inoltre, è possibile che non tutte le chiamate RMI abbiano una chiamata API REST equivalente in quanto le API REST non sono disponibili per tutto l'SDK Java del prodotto.

Il traffico di rete può essere elevato se si codifica con più chiamate REST a causa del numero di chiamate di rete.

Chiamate REST di massa

Con le chiamate REST di massa, si scrive il codice per una chiamata che agisce su una serie di record che soddisfano i criteri. Le chiamate REST di massa offrono prestazioni di rete migliori rispetto a più chiamate REST individuali. Tuttavia, potresti avere problemi con la mancanza di equivalenza delle API REST con chiamate RMI granulari.

Chiamate REST che utilizzano script di automazione

Le chiamate REST che utilizzano gli script di automazione offrono la massima granularità e prestazioni di rete. Con questo approccio, è possibile accedere all'SDK Java completo, che non è possibile con gli altri approcci.

Scrivere uno script di automazione nell'applicazione Script di automazione e richiamare tale script utilizzando il client REST. Il framework di script trasmette i parametri di query API allo script. Lo script di automazione può essere scritto in molte lingue.

La codifica dell'API REST utilizzando script di automazione ti fornisce anche un modo per creare in modo organico le API REST che si adattano al tuo ambiente e che possono essere utilizzate altrove.