Si vous n’avez pas lu la première partie, voici un petit résumé de ce qui s’est dit : Axis2 est un moteur permettant de gérer et d’exécuter des Web Services, et peut être installé sur un serveur Apache Tomcat. Nous avons réalisé cette installation et téléchargé le plugin pour NetBeans afin de permettre le développement et le déploiement de services.
Cette deuxième partie va expliquer comment créer un projet de base dans l’ IDE, comment le déployer et comment le tester. Une troisième partie sera également disponible d’ici quelques jours, dans laquelle on détaillera la connexion à l’AS/400 pour retourner des valeurs provenant d’une table de notre base de données.
Créer un projet dans NetBeans
Dans le logiciel, choisissez le menu « Fichier » puis « Nouveau projet…« . Créez un projet de type Application Java, nommez-le comme bon vous semble, choisissez son emplacement, et décochez la case qui permet de créer une classe principale (main) par défaut.
Pour vous simplifier la tâche, voici des valeurs que vous pouvez saisir :
- Nom du projet : AxisHello.
- Localisation : C:\AxisHello.
Une fois le projet créé, on ajoute un package que l’on nomme comme bon nous semble. Par exemple, « axishello« . Ensuite, on effectue un clic droit sur celui-ci et on choisit d’insérer un nouveau fichier. Le menu contextuel « Nouveau » ne propose pas le type souhaité, donc on choisit « Autre… ». Une fenêtre s’ouvre : dans la liste de gauche, on sélectionne la catégorie Web Services. A droite, on sélectionne le type Axis2 Web Service from Java.
L’écran d’après propose de créer un service vide ou bien depuis une classe existante. Pour notre exemple, nous avons choisi de générer un service totalement vide. Nous l’avons appelé « HelloAxisWorld« . On dispose donc d’un fichier Java avec la classe du même nom que notre service. On y retrouve une fonction de base qui retourne une chaine de caractères pour dire bonjour. Un paramètre est passé à cette fonction.
Déployer le service
Pour déployer sur notre serveur Apache Tomcat, il suffit d’effectuer un clic droit sur le service puis de choisir l’option « déployer sur le serveur ».
Si aucun message d’erreur ne s’affiche, le déploiement a été effectué. Il n’y a plus qu’à tester en saisissant l’adresse correcte dans le navigateur. A noter que NetBeans propose aussi un menu contextuel sur chaque opération pour la tester directement (« Tester l’opération dans le navigateur« ) !
Voici l’adresse par défaut pour exécuter l’opération « hello » :
http://localhost:8080/axis2/services/HelloAxisWorld/hello?name=SAISIR_UN_NOM
Le résultat obtenu est présenté dans le format XML.
Créer d’autres méthodes
Le fait d’ajouter des méthodes dans la classe va automatiquement mettre à jour la structure du service. Il ne restera plus qu’à le déployer à nouveau pour que les modifications soient prises en compte.
d'abord merci pour le tuto il est très claire , mais g un problème au niveau de la création d'autres méthode, en fait je n'arrive à accéder qu'à la première opération lorsque j'ajoute une deuxième (et après avoir déployé le service à nouveau) une boite de dialogue m'indique que je ne peux pas ouvrir la page web demandé (unable to open web service tester page) pourriez vous m'éclairer svp? merci
Bonjour,
Ces sujets pourraient vous aider.
[1]
coderanch.com/t/474805/Web-Services/java/Unable-open-web-service-tester
[2]
netbeans-org.1045718.n5.nabble.com/Unable-to-run-web-service-in-netbeans-7-2-1-td5717152.html
[3]
forums.netbeans.org/topic32899.html
[4]
forums.netbeans.org/topic15951.html
[5]
netbeans-org.1045718.n5.nabble.com/Problem-creating-Apache-Axis2-Web-Service-td2921939.html
En gros,
– Vérifier l'installation d'axis2 (se référer à la doc officielle si jamais : axis.apache.org/axis2/java/core/docs/installationguide.html).
– Vérifier les variables d'environnement du serveur et d'axis2.
– Bien démarrer le serveur.
– Vérifier la configuration du déploiement des services et l'emplacement dans les options NetBeans.
– Bien compiler et déployer avant de tester.
Dites-moi si vous avez réussi et comment, car je n'ai pas eu ce problème lorsque j'ai commencé à utiliser Axis2.
Bonjour, vérifiez également que le WSDL est à jour. Si ce n'est pas le cas, clic droit sur "Axis2 Web Services" dans l'arborescence du projet puis "Generate WSDL". Cliquez sur "Yes" pour remplacer le WSDL existant, puis redéployez le WS.