Generazione del client delle API REST

<< Fare clic per visualizzazione il sommario >>

Percorso:  API Rest OpenAPI >

Generazione del client delle API REST

La generazione delle librerie client relative alla web application OpenAPI deve essere effettuata con il tool Swagger-codgen, reso disponibile su instruments.jamio.com, nei linguaggi Java o C#. La generazione è auto consistente per quanto riguarda i client da realizzare in ambiente C# o Java. Per altri ambienti è necessario integrare delle classi rappresentative dei tipi enumerativi, in quanto il tool è stato modificato per consentire la rappresentazione dei tipi enumerativi di Jamio openwork. Tale funzionalità è stata implementata per i linguaggi C# e Java. Come prerequisito all'utilizzo del tool, è necessario installare Java versione 1.8 (o successive).

 

Per generare il client delle API REST occorre:

1.Aver generato il descrittore swagger personalizzato per modelli;

2.Scaricare il tool Swagger-codgen disponibile su instruments.jamio.com;

3.Aprire la finestra di comando e posizionarsi nel percorso della cartella dove è stato salvato il tool Swagger-codgen;

4.Per il client C#, da finestra di comando eseguire la seguente istruzione:

java -jar swagger-codegen-cli.jar generate -l csharp -o directory di destinazione -i "percorso swagger personalizzato" --remove-operation-id-prefix --additional-properties packageName="nome package",targetFramework=v4.5.2

ad esempio

java -jar swagger-codegen-cli.jar generate -l csharp -o C:\Esempio\clientOpenAPI\ -i "C:\Esempio\swagger\swagger.json" --remove-operation-id-prefix --additional-properties packageName=myFirstClientOpenAPi,targetFramework=v4.5.2

 

Il parametro targetFramework=v4.5.2 è obbligatorio, pena la non compilabilità del progetto generato.

 

5.Per il client Java, da finestra di comando eseguire la seguente istruzione:

java -jar swagger-codegen-cli.jar generate -l java -o directory di destinazione -i "percorso swagger personalizzato" --remove-operation-id-prefix --additional-properties dateLibrary=java8 --library=jersey2

ad esempio

java -jar swagger-codegen-cli.jar generate -l java -o C:\Esempio\clientOpenAPI\ -i "C:\Esempio\swagger\swagger.json" --remove-operation-id-prefix --additional-properties dateLibrary=java8 --library=jersey2

 

In generale l’esecuzione del jar è effettuata da riga di comando, fornendo le seguenti istruzioni:

java -jar swagger-codegen-cli.jar generate -l csharp -o "directory di destinazione" -i "indirizzo swagger" --remove-operation-id-prefix --additional-properties packageName="nome package"

 

I seguenti parametri sono obbligatori:

-l “linguaggio in cui dovrà essere generato il client”;

-o “directory di destinazione ove verranno inserite le cartelle e i file relativi al client” ;

-i “url da cui prelevare lo swagger da fornire in input al metodo”;

Vi sono, inoltre alcune impostazioni di default, fortemente consigliate:

Per entrambi I client C# e Java

--remove-operation-id-prefix

Per C#

--additional-properties packageName="nome package"

Per Java

--additional-properties dateLibrary=java8

--library=jersey2

 

Una volta eseguito il comando, nella cartella di destinazione sarà disponibile il client generato. Aprire con l'ambiente di sviluppo C# o Java il file che rappresenta il progetto. All'interno della soluzione/progetto l’integratore disporrà di tre cartelle relative a:

i controller di base (API)

l’implementazione del Client (Client)

la rappresentazione dei modelli della risorse, oggetto o meno di personalizzazione (Model)

E’ quindi necessario importare tali cartelle nel proprio progetto di sviluppo ed utilizzare il client generato secondo quanto qui riportato.