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:
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>
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
<?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>
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
@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" );
    }
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" );
    }
Alors avec la premiere servlet pour tester mon webservice avec SOAPui j'utilise url suivante:
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