<< 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.