Hi Francesco,

> Hi all,
> we had some discussion in the past about random errors with Java 7 and the
> -Pjaxrs Maven profile.
> Today I have updated CXF from 2.7.3 to 2.7.4 and most of such errors seems
> to disappear (I've been executing some times -Pjaxrs with either OpenJDK 7
> and Oracle JDK 7 on different platforms).

Cool!

> 
> Only two remain, in ConnInstanceTestITCase, when calling
> 
> connectorService.list(null)
> 
> This call is intentioned to be routed to ConnectorServiceImpl.list(null), 
> while
> instead it goes to
> ConnectorService.readByResource(null): I guess that CXF gets confused by
> the JAX-RS annotations on ConnectorService:
> 
>     @GET
>     List<ConnInstanceTO> list(@QueryParam("lang") String lang);
> 
>     @GET
>     ConnInstanceTO readByResource(@MatrixParam("resourceName") String
> resourceName);
> 
> with null param, in fact, there seems to be no way find the right match.
> 
> Why don't we have instead
> 
>     @GET
>     @Path("{resourceName}")
>     ConnInstanceTO readByResource(@PathParam("resourceName") String
> resourceName);
> 
> ? This should solve the issue, but I guess there is some best practice here, 
> so
> here's why I am asking.
> 
> For the moment I have changed, in ConnInstanceTestITCase the calls above
> to
> 
> connectorService.list("")
> 
> and this makes the tests run smoothly.
> 

Currently CXF method selection is extended by 
org.apache.syncope.core.rest.utils.QueryResourceInfoComperator.
This comparator additionally analyses Query and Matrix parameters to select a 
correct method.
I do not exactly remember the reason why it was done this way.
However I tend to use classic path selection for readByResource() as well. 
Resource name is reasonable path parameter.

> Final remark: why "ConnectorService" (and derived) instead of
> ConnInstanceService (and derived)? Connectors and ConnInstance (e.g.
> connector instances) are distinct in Syncope.
> 

Not sure ... the name seems to be ConnectorService from beginning. Will ping 
Jan regarding it.

Regards,
Andrei.

> Regards.
> 
> --
> Francesco Chicchiriccò
> 
> ASF Member, Apache Syncope PMC chair, Apache Cocoon PMC Member
> http://people.apache.org/~ilgrosso/

Reply via email to