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).
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.
Final remark: why "ConnectorService" (and derived) instead of
ConnInstanceService (and derived)? Connectors and ConnInstance (e.g.
connector instances) are distinct in Syncope.
Regards.
--
Francesco Chicchiriccò
ASF Member, Apache Syncope PMC chair, Apache Cocoon PMC Member
http://people.apache.org/~ilgrosso/