cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Vassilis Virvilis <v.virvi...@biovista.com>
Subject Re: Collection jax-rs saga: List<List<Entity>>
Date Mon, 25 Aug 2014 11:09:01 GMT
Hi,

I will take a look at MultivaluedMap. Thanks for the hint.

> I see that the runtime does not pass a generic type of the given
> parameter to ParamConverterProvider, I'll fix it, so you'd have
> List<List<Entity>> working with the ParamConverterProvider too.

really thanks for that. I volunteer to test patches/jars/nightly builds 
of course.

    Vassilis


On 08/25/2014 01:44 PM, Sergey Beryozkin wrote:
> Hi
> On 25/08/14 11:00, Vassilis Virvilis wrote:
>> Hi,
>>
>> ok that makes sense for MessageBodyReader. However I can't remove
>> @FormParam because I have multiple parameter to pass. But if I run out
>> of all other options I may manually parse the document and all the
>> parameters. So this is a viable solution. I think...
>>
> MultivaluedMap is a spec compliant way to capture multiple form parameters.
>> Can you also comment on the List<List<Entity>> issue? What is the
>> expected payload in the form parameters for CXF to parse correctly or at
>> least delegate parsing to ParamConverter?
>>
> I see that the runtime does not pass a generic type of the given
> parameter to ParamConverterProvider, I'll fix it, so you'd have
> List<List<Entity>> working with the ParamConverterProvider too.
> Thanks, Sergey
>> Thanks
>>
>>     Vassilis
>>
>>
>> On 08/25/2014 12:34 PM, Sergey Beryozkin wrote:
>>> Hi Vassilis
>>> For MessageBodyReader to work you need to remove a @FormParam
>>> annotation, give it a try please
>>> Cheers, Sergey
>>>
>>>
>>> On 25/08/14 09:33, Vassilis Virvilis wrote:
>>>> Hi Sergey, everybody
>>>>
>>>> I managed to do some work on Resty-GWT
>>>>
>>>> https://github.com/resty-gwt/resty-gwt/issues/195
>>>> https://github.com/resty-gwt/resty-gwt/pull/196
>>>>
>>>> With the patches (not yet applied) I can transmit and receive plain
>>>> List<Entity> with no wrapper object.
>>>>
>>>> Now I am hitting another roadblock and any input, especially from you
>>>> Sergey is highly appreciated. I am trying to transmit a list of lists
>>>> List<List<Entity>>. With my patches applied RestyGWT sends something
>>>> like this in @FormParam
>>>>
>>>> public void test(@FormParam("lists-of-entities") List<List<Entity>>);
>>>>
>>>> the play load is
>>>> lists-of-entities:[...json representation of List<Entity> as json
>>>> array ]
>>>> lists-of-entities:[...json representation of List<Entity> as json
>>>> array ]
>>>>
>>>> Now I am expecting my ParamConverter to be called with List<Entity>
>>>> type
>>>> but it is called with plain Entity and it fails because it tries to
>>>> deserialize an array. Now why it is doing that? From my interpretation
>>>> of the standard is that it should break the outer list to multiple
>>>> parameters with the same name. How it can expect to do the same with
>>>> the
>>>> inner list? There is not enough information to assemble it back.
>>>>
>>>> I tried to register also a MessageBodyReader but that also failed. Its
>>>> functions are not called at all, while at the same time
>>>> MessageBodyWriter is getting called and it works all right. Note that I
>>>> have one class implementing ParamConverterProvider, MessageBodyWriter,
>>>> MessageBodyReader. Any ideas why it is not working?
>>>>
>>>>     Vassilis
>>>
>>>
>>
>
>
>

-- 

__________________________________

Vassilis Virvilis Ph.D.
Head of IT
Biovista Inc.

US Offices
2421 Ivy Road
Charlottesville, VA 22903
USA
T: +1.434.971.1141
F: +1.434.971.1144

European Offices
34 Rodopoleos Street
Ellinikon, Athens 16777
GREECE
T: +30.210.9629848
F: +30.210.9647606

www.biovista.com

Biovista is a privately held biotechnology company that finds novel uses 
for existing drugs, and profiles their side effects using their 
mechanism of action. Biovista develops its own pipeline of drugs in CNS, 
oncology, auto-immune and rare diseases. Biovista is collaborating with 
biopharmaceutical companies on indication expansion and de-risking of 
their portfolios and with the FDA on adverse event prediction.



Mime
View raw message