Bonjour,
je voudrais rajouter une servlet dans mon fichier web.xml pour qu'elle accèdent au meme package et la meme classe, mais font appelle à différente méthodes, mais je n'arrive pas à le faire avec la 2 eme.
Voici mon bloc XML:
et pour les deux fichier XML api-web-servlet.xml et api-r-servlet.xml j'ai le contenu suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 <!-- old servlet--> <servlet> <servlet-name>api</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-config/api-r-servlet.xml</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet> <servlet-mapping> <servlet-name>api</servlet-name> <url-pattern>/sitesApi/*</url-pattern> </servlet-mapping> <!-- my secod servmet V2 --> <servlet> <servlet-name>webservice</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-config/api-web-servlet.xml</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet> <servlet-mapping> <servlet-name>webservice</servlet-name> <url-pattern>/api/*</url-pattern> </servlet-mapping>
Voila les deux méthodes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd" > <context:annotation-config/> <context:component-scan base-package="com.me.project.rest.api" /> <mvc:annotation-driven /> </beans>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 @RequestMapping(value = "/v2/mySite", method = RequestMethod.GET) public @ResponseBody Object SitesV2( @RequestParam(value = "ajouterstatus", required = false) Integer ajouterstatus, @RequestParam(value = "monadresse", required = false) String monadresseHttpServletRequest request, HttpServletResponse responseHttp{ try { appname = request.getHeaders( "Name" ).nextElement().toString(); } catch ( Exception e ) { return new Result( "", ": AppName is Empty" ); }Alors avec la premiere servlet pour tester mon webservice avec SOAPui j'utilise url suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 @RequestMapping(value = "/v1/mySite", method = RequestMethod.GET) public @ResponseBody Object SitesV1( @RequestParam(value = "ajouterstatus", required = false) Integer ajouterstatus, @RequestParam(value = "monadresse", required = false) String monadresseHttpServletRequest request, HttpServletResponse responseHttp{ try { appname = request.getHeaders( "Name" ).nextElement().toString(); } catch ( Exception e ) { return new Result( "", ": AppName is Empty" ); }
https://www.developpez.net/forums/localhost:8080/sitesApi/v1/mysite?id=1&fields=site.namej'aurai le resultat que j'attende et pareil avec cette URL aussi : localhost:8080/sitesApi/v2/mysite?id=1&fields=site.name MAIS avec l'url suivante j'aurai pas ce que je cherche : https://www.developpez.net/forums/localhost:8080/api/v1/mysite?id=1&fields=site.name et pareil avec https://www.developpez.net/forums/localhost:8080/api/v2/mysite?id=1&fields=site.name
Sachant que les deux méthode sont copie coller et ça marche avec la premiere servlet sitesApi et non pas avec api
Merci pour vos réponse
Partager