Les deux révisions précédentes
Révision précédente
Prochaine révision
|
Révision précédente
|
enseignement:tp:sw:jaxws:2016 [2016/12/07 07:13] ecoquery [Contrôleur du service] |
enseignement:tp:sw:jaxws:2016 [2016/12/09 15:42] (Version actuelle) ecoquery [Contrôleur principal (front)] |
Un projet de démarrage est fourni et comprend l'implémentation de base des fonctionnalités métier (module ''%%metier%%''). Il vous sera demandé de compléter ce projet en développant une application SpringBoot permettant d'exposer sous la forme d'un ensemble de services Web. | Un projet de démarrage est fourni et comprend l'implémentation de base des fonctionnalités métier (module ''%%metier%%''). Il vous sera demandé de compléter ce projet en développant une application SpringBoot permettant d'exposer sous la forme d'un ensemble de services Web. |
| |
| URL de pull du projet: https://forge.univ-lyon1.fr/hg/tiw1-2016-services-base |
===== Modalités de rendu ===== | ===== Modalités de rendu ===== |
| |
} | } |
| |
| // ne pas utiliser dispatcherServlet comme nom pour ce bean sous peine de |
| // ne plus pouvoir utiliser de bean @Controller ailleurs dans l'application |
@Bean | @Bean |
public ServletRegistrationBean dispatcherServlet() { | public ServletRegistrationBean cxfDispatcherServlet() { |
return new ServletRegistrationBean(new CXFServlet(), "/soap-api/*"); | return new ServletRegistrationBean(new CXFServlet(), "/soap-api/*"); |
} | } |
</note> | </note> |
| |
Aller à l'URL [[http://localhost:8080/soap-ui/]] et vérifiez que votre service est bien listé. | Aller à l'URL [[http://localhost:8080/soap-api/]] et vérifiez que votre service est bien listé. |
| |
Tester son fonctionnement avec [[http://www.soapui.org/|soapUI]]. | Tester son fonctionnement avec [[http://www.soapui.org/|soapUI]]. |
==== Contrôleur principal (front) ==== | ==== Contrôleur principal (front) ==== |
| |
Implémenter un contrôleur point d'accès au service via un [[http://docs.spring.io/spring/docs/current/javadoc-api/index.html?org/springframework/web/servlet/mvc/Controller.html|''%%@Controller%%'']] SpringMVC. Ce contrôleur traitera les requêtes HTTP et extraira le contenu (//payload//) du message via l'API SAAJ. Il redirigera ensuite le traitement vers le composant Web service provider de l'étape précédente. | Implémenter un contrôleur point d'accès au service via un ''[[http://docs.spring.io/spring/docs/current/javadoc-api/index.html?org/springframework/web/servlet/mvc/Controller.html|@Controller]]'' SpringMVC. Ce contrôleur traitera les requêtes HTTP et extraira le contenu (//payload//) du message via l'API SAAJ. Il redirigera ensuite le traitement vers le composant Web service provider de l'étape précédente. |
| |
Utiliser [[http://www.soapui.org/|soapUI]] pour tester votre contrôleur point d'accès. | Utiliser [[http://www.soapui.org/|soapUI]] pour tester votre contrôleur point d'accès. |
| |
<note>Comme indiqué dans ''%%cours.wsdl%%'', le service déployé devra être accessible à l'adresse [[http://localhost:8080/services-sans-cxf/cours|''%%http://localhost:8080/services-sans-cxf/cours%%'']]. Il faut donc bien configurer le ''%%@RequestMapping%%'' en fonction de cette URL.</note> | <note>Comme indiqué dans ''%%cours.wsdl%%'', le service déployé devra être accessible à l'adresse [[http://localhost:8080/services-sans-cxf/cours]]. Il faut donc bien configurer le ''%%@RequestMapping%%'' en fonction de cette URL.</note> |
| <note important>Attention au nom de la dispatcherServlet dans la configuration Spring (maj du 09/12/2016)</note> |
| <note tip>Pour fabriquer correctement les ''MimeHeaders'', il faut les copier via une boucle depuis les headers de la requête HTTP.</note> |
| <note tip>En cas d'utilisation de l'API XML de transformation pour faire des copies entre représentations XML, penser à ''SAAJResult'' qu ipermet d'écrire dans noeud XML d'un message SOAP</note> |
| |
Auteur: <html><a href="http://liris.cnrs.fr/ecoquery/"></html>Emmanuel Coquery<html></a><br/></html> <html><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/" rel="license"><img src="https://licensebuttons.net/l/by-nc-sa/3.0/80x15.png" alt="CC Attribution-Noncommercial-Share Alike 3.0 Unported" /></a></html> Ce document est placé sous les termes de la licence suivante : <html><bdi><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/" rel="license" class="urlextern"></html>CC Attribution-Noncommercial-Share Alike 3.0 Unported<html></a></bdi></html> | Auteur: <html><a href="http://liris.cnrs.fr/ecoquery/"></html>Emmanuel Coquery<html></a><br/></html> <html><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/" rel="license"><img src="https://licensebuttons.net/l/by-nc-sa/3.0/80x15.png" alt="CC Attribution-Noncommercial-Share Alike 3.0 Unported" /></a></html> Ce document est placé sous les termes de la licence suivante : <html><bdi><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/" rel="license" class="urlextern"></html>CC Attribution-Noncommercial-Share Alike 3.0 Unported<html></a></bdi></html> |
| |
| |