Premier WebService avec Grails
Grails est un framework permettant de simplifier à l’extrême la mise en place et le développement d’une application Java/JEE tout en conservant la puissance des outils qui le composent (par exemple Spring, Hibernate ou XFire). De plus, la possibilité de coder l’application en Groovy comble l’absence de flexibilité que certains reprochent aujourd’hui au langage Java. Néanmoins avec Grails, le développeur a toujours le choix de coder en Java, en Groovy ou les deux !
A des fins d’illustration, nous allons créer un WebService qui convertit des degrés Celsius en degrés Fahrenheit (et inversement).
Installation
Après avoir installé Grails sur votre plateforme, il convient également d’installer le plugin XFire qui va nous fournir en une commande le support des WebServices :
-
$> grails install-plugin xfire
Ensuite, le démarrage d’un nouveau projet Grails est très rapide : Quick+Start.
Création du WebService
Créez ensuite la structure du projet (ligne 1), déplacez vous dans le projet (ligne 2), et créez le service DegreeConverter (ligne 3).
-
$> grails create-app degreeconverter
-
$> cd degreeconverter
-
$> grails create-service DegreeConverter
Editez le contenu du fichier “grails-app/services/DegreeConverterService.groovy” :
-
import javax.jws.WebParam
-
class DegreeConverterService {
-
static expose=[‘xfire’]
-
float celsiusToFahrenheit(@WebParam(name=“tc”, header=true) float tc) {
-
float tf = (9f / 5f) * tc + 32f
-
}
-
float fahrenheitToCelsius(@WebParam(name=“tf”, header=true) float tf) {
-
float tc = (5f / 9f) * (tf – 32f)
-
}
-
}
Lancement
Lancez l’application avec le serveur embarqué
-
$> grails run-app
Votre WebService est déployé et prêt à l’emploi. Vous pouvez consulter son WSDL à l’adresse http://localhost:8080/degreeconverter/services/degreeConverter?wsdl
Conclusion
Nous avons illustré dans ce billet qu’il est très facile de créer et de déployer un WebService avec Grails.