Hi Jeroen,

>I noticed that the restlet jax-rs implementation has difficulties 
>selecting the best resource method when multiple methods (in the same 
>resource) match a given URI.
>
>An example will clarify:
>
>@Path("foo")
>public class FooResource {
>
>     @GET
>     @Path(value = "{id}")
>     public String getFooId(@PathParam(value = "id") Long id) {
>         return "foo"+id;
>     }
>
>     @GET
>     @Path(value = "bar")
>     public String getFooBar() {
>         return "foobar";
>     }
>}
>
>GET foo/5    =>  "foo5"
>GET foo/bar => 404 Not Found
>
>Reason:
>The algorithm finds in both cases that resource FooResource is the best 
>matching resource. During this research, it even knows that getFooId is 
>the best matching method in the first request, and getFooBar is the best 
>in the second request.
>But once the resource is chosen, another part of the algorithm looks for 
>the best matching resource method, but seems to be disregarding the 
>amount of literal characters and capturing groups in the matching uri 
>templates.
>Then both methods are considered equally good, and the first one is 
>chosen in both requests, yielding the error in the latter.
>
>This looks like a bug to me. Should I create an issue ?

Yes, please.
It would be cool, if you also could apply a patch, or give detailed notes, 
where the bug occurs.

best regards
    Stephan
___________________________________________________________
GRATIS für alle WEB.DE Nutzer: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://movieflat.web.de

------------------------------------------------------
http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=2627302

Reply via email to