osdir.com

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jira] [Commented] (ARIES-1866) URI binding conflict resolution appears incorrect in jaxrs-whiteboard


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

Carlos Sierra commented on ARIES-1866:
--------------------------------------

hey [~tomq42],

it looks like the whiteboard specification is a bit broad to this regard and the expected behaviour in this case it is not very well defined.

I have pushed a proposed fix in which resource services that do not specify {{service.ranking}} are considered equal and, thus, not ordered among themselves so JAX-RS rules should apply.

Before this fix the default {{ServiceReference}} order was applied, so service resource NEVER clashed because the {{ServiceReference}} ordering was applied.

We have also filed a proposal to ammend the spec and narrow down this expected behavior.

I have incorporated your tests to the JAX-RS test suite.

I have also released a new snapshot containing this fix. Could you please check this works for you?

Bests.

Carlos.

> URI binding conflict resolution appears incorrect in jaxrs-whiteboard
> ---------------------------------------------------------------------
>
>                 Key: ARIES-1866
>                 URL: https://issues.apache.org/jira/browse/ARIES-1866
>             Project: Aries
>          Issue Type: Bug
>          Components: jax-rs-whiteboard
>         Environment: I'm using jax-rs whiteboard 1.0.1 on Windows, within apache karaf.
>  
>            Reporter: Tom Quarendon
>            Assignee: Carlos Sierra
>            Priority: Major
>         Attachments: TestResource.java, TestResource2.java
>
>
> I'm seeing different behaviour in the URI resource binding conflict resolution when using tje jax-rs whiteboard as then using "plain" cxf.
> Attached are two resource class implementations. One has a class level @Path of "test", with then a subresource locator with an @Path of "\{a}" returning another resource class that has a @GET with an @Path of "\{b}". 
> The other resource class has a class level @Path of "test/a/b". 
> Given a GET request for "/test/a/b" it should match the second of these resource classes as being the most specific match. Instead it matches the first. Indeed it seems that the presence of the first resource class stops anything going to the second. If I change the @Path for the second resource class to be "test2/a/b" then appropriate requests get routed there. 
> I have run a "plain" cxf test by adapting the CXF provided "basic" jax-rs test with the same resource classes, and it routes as I would expect. 
> I had intended to try and adapt the example in the aries jaxrs whiteboard project, but I get test errors when I run an "mvn install",and it isn't obvious to me how the jax-rs._example_-run/_example_.jar file mentioned in the readme would get created.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)