[
https://issues.apache.org/jira/browse/CXF-5988?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14135661#comment-14135661
]
Srinivas Nagulapalli commented on CXF-5988:
-------------------------------------------
Please find uploaded RestDemo2.7Z zipped file containing sample maven based
Eclipse-project that can be used to reproduce the issue.
When UserManagerServiceTest.java is invoked, the first call -
getUserBeforeDate(startDate) that passed java.util.Date directly results in
invoking ParamConverter (SomeDateConverter).
However, the next call to geUserByDateRange(request) - that passes an instance
of GetUserByDateRangeRequest object that in turn contains date attrbutes - does
NOT invoke ParamConverter (SomeDateConverter).
It is using 3.0.2-SNAPSHOT of cxf.
Please let me know if you need any other info or if I am missing something.
Thanks
Srini
> Provide support for a pluggable parameter conversion mechanism for JAX-RS
> client side proxies
> ---------------------------------------------------------------------------------------------
>
> Key: CXF-5988
> URL: https://issues.apache.org/jira/browse/CXF-5988
> Project: CXF
> Issue Type: Bug
> Components: Core, JAX-RS
> Affects Versions: 3.0.1
> Environment: Windows 7
> Reporter: Srinivas Nagulapalli
> Assignee: Sergey Beryozkin
> Labels: patch
> Fix For: 2.7.13, 3.0.2, 3.1.0
>
> Attachments: RestDemo2.7z
>
>
> Server-side JAX-RS implementation allows injection of custom parameter
> converters using ParamConverterProvider
> (http://cxf.apache.org/docs/jax-rs-basics.html#JAX-RSBasics-Parameterconverters).
> A similar mechanism (or the exact same) is required on the client side to
> control how parameters are serialized (marshalled). One approach is to allow
> specifying param converters when declaring jaxrs:client with Spring and/or
> programmatically specifying it.
> A specific case to consider: Client side serialization of Date object
> (java.util.Date).
> Given the following API:
> @Path(“/someresource”)
> @GET
> void someApi(@MatrixParam(“”) SomeRequestWithDate request);
>
> Following shows the structure of the request with Dates:
> //----------------------------------------------------
> import java.util.Date;
> public class SomeRequestWithDate {
> protected Date startDate;
>
> public Date getStartDate() {
> return startDate;
> }
> }
> //----------------------------------------------------
> When API is invoked through a client proxy
> Then the following URL should be generated (where dates are serialized as ISO
> strings):
> /someresource/;startDate=2014-09-04T19:05:38.785Z
> Instead, currently following URL is generated:
> /someresource/;startDate.date=4;startDate.hours=15;startDate.minutes=4;startDate.month=8;startDate.seconds=34;startDate.time=1409857474660;startDate.year=114;startDate.day=4;startDate.timezoneOffset=240
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)