Hi,
with reference to the solutions proposed in this thread [1] to avoid
forcing client code passing null parameters, I am exploring @BeanParam.
I have now UserService (an interface) with a brand new list() method like as
@GET
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
PagedResult<UserTO> list(@BeanParam ListQuery listQuery);
and my ListQuery bean is as [2].
Now, when invoking
http://localhost:9080/syncope/rest/users;realm=%2Feven%2Ftwo;realm=%2Fodd
I received an error 500:
[...]
Caused by: java.lang.AbstractMethodError:
org.apache.syncope.core.rest.cxf.service.UserServiceImpl.list(Lorg/apache/syncope/common/rest/api/beans/ListQuery;)Lorg/apache/syncope/common/lib/to/PagedResult;
If I check the URL generated by client code for
ListQuery lq = new ListQuery();
lq.setRealms(Arrays.asList("/even/two", "/odd"));
I see that
http://localhost:9080/syncope/rest/users
is generated (e.g. without realms).
What am I doing wrong?
TIA
Regards.
[1]
http://cxf.547215.n5.nabble.com/JAX-RS-Matrix-parameters-and-method-matching-tp5756387p5756414.html
[2] https://paste.apache.org/aHaK
--
Francesco Chicchiriccò
Tirasa - Open Source Excellence
http://www.tirasa.net/
Involved at The Apache Software Foundation:
member, Syncope PMC chair, Cocoon PMC, Olingo PMC
http://people.apache.org/~ilgrosso/