You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by "Sebastian Daschner (JIRA)" <ji...@apache.org> on 2015/03/29 10:37:52 UTC

[jira] [Commented] (TOMEE-1535) JAX-RS Subresource paths are chosen incorrectly

    [ https://issues.apache.org/jira/browse/TOMEE-1535?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14385677#comment-14385677 ] 

Sebastian Daschner commented on TOMEE-1535:
-------------------------------------------

This was tested on the latest version (built yesterday from Git repository).

> JAX-RS Subresource paths are chosen incorrectly
> -----------------------------------------------
>
>                 Key: TOMEE-1535
>                 URL: https://issues.apache.org/jira/browse/TOMEE-1535
>             Project: TomEE
>          Issue Type: Bug
>    Affects Versions: 2.0.0
>            Reporter: Sebastian Daschner
>
> When using a JAX-RS root resource with a subresource, the path of the subresources are evaluated in a wrong way.
> Consider following code:
> @Stateless
> @Path("/")
> public class RootResource {
>     @Context
>     ResourceContext resourceContext;
>     @GET
>     public String getRoot() {
>         return "root";
>     }
>     @Path("models")
>     public ModelsResource models() {
>         return resourceContext.getResource(ModelsResource.class);
>     }
> }
> and:
> public class ModelsResource {
>     @GET
>     public String getAll() {
>         return "all";
>     }
>     @GET
>     @Path("{id}")
>     public String get(@PathParam("id") final String id) {
>         return "model_" + id;
>     }
> }
> The paths of the resources which TomEE evaluates are:
> /resources/       ->      String getRoot()
> /resources/       ->      String getAll()           
> /resources/{id}   ->      String get(String)
> But the correct way due to the spec would be
> /resources/models/ -> getAll() and
> /resources/models/{id} -> get(String).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)