2016-04-28 30 views
0

Ich muss einen Rest-Web-Service zu entwickeln. Dazu benutze ich restlet api.
Ich habe 3 get Urls:Resllet Mapping-Ressourcen mit URLs mit Abfrageparam

1. /info/person?name=aaa 
2. /info/person?name=aaa&age=21 
3. /info/person?name=aaa&age=21&sex=male 

Ich möchte diese URLs zu 3 verschiedene Ressourcen Methoden abzubilden.

import javax.ws.rs.GET; 
import javax.ws.rs.Path; 
import javax.ws.rs.core.MediaType; 
import javax.ws.rs.core.Response; 
import javax.ws.rs.QueryParam; 

@Path("/info/person") 
@Produces(MediaType.APPLICATION_XML) 
public class TestResource{ 

//method 1 
@GET 
public Response getInfo(@QueryParam("name") final String name){ 
... 
} 

//method 2 
@GET 
public Response getInfo(@QueryParam("name") final String name){ 
.... 
} 

//method 3 
@GET 
public Response getInfo(@QueryParam("name") final String name, @Queryparam("age") final int age, @Queryparam("sex") final String sex){ 
.... 
} 
} 

ich, dass für url1 erwarten, 1-Methode aufgerufen wird, für url2, Methode 2 werden und für url3 aufgerufen wird, Verfahren 3 wird aufgerufen werden.

Aber das funktioniert nicht. Die erwarteten Methoden werden nicht aufgerufen.

Bitte helfen Sie mir zu identifizieren, wo ich den Fehler mache.

restlet version : 2.3.4

Antwort