cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Benson Margulies <bimargul...@gmail.com>
Subject Re: JAXRS : issues with AegisProvider
Date Thu, 18 Jun 2009 00:14:14 GMT
Sergey,

My memory of how all this is supposed to work isn't good enough.

In your failing test case, the problem starts with ...

WARNING: xsi:type="{http://fortest.jaxrs.cxf.apache.org}AegisTestBean" was
specified, but no corresponding Type was registered; no default.

For this to work, somehow the Aegis context has to be aware of this type. As
the test case is structured, the only type it has access to is Map. No
annotations, no generic arguments.

You can't get a class reference for a generic type due to type erasure.
Aegis handles parameterized types by using reflection on parameters and
fields. The null 'type' argument is going to have to have something in it.



On Wed, Jun 17, 2009 at 10:24 AM, Sergey Beryozkin <sberyozk@progress.com>wrote:

> I created two JIRAs - please have a look at them whenever you get a chance
> - they don't block me at the moment
>
> https://issues.apache.org/jira/browse/CXF-2296
> https://issues.apache.org/jira/browse/CXF-2297
>
> thanks, Sergey
>
>
>
> ----- Original Message ----- From: "Sergey Beryozkin" <
> sberyozk@progress.com>
> To: <dev@cxf.apache.org>
> Sent: Wednesday, June 17, 2009 2:42 PM
>
> Subject: Re: JAXRS : issues with AegisProvider
>
>
>  Hi Benson - I just sent a followup email at the same time you replied :-),
>> I'll create a JIRA shortly,
>>
>> thanks, Sergey
>>
>> ----- Original Message ----- From: "Benson Margulies" <
>> bimargulies@gmail.com>
>> To: <dev@cxf.apache.org>
>> Sent: Wednesday, June 17, 2009 2:10 PM
>> Subject: Re: JAXRS : issues with AegisProvider
>>
>>
>>  Like I said. Given my current level of load, if you tee it up, I'll try
>>> to
>>> knock it down. But I need something that misbehaves. I'm sorry to have to
>>> ask for that silver platter.
>>>
>>> On Wed, Jun 17, 2009 at 8:43 AM, Sergey Beryozkin <sberyozk@progress.com
>>> >wrote:
>>>
>>>  For the purpose of the demo I introduced a wrapper around the
>>>> Map<GreetingPhrase, String> and it works nicely, but I'd appreciate
any
>>>> help
>>>> in getting to the bottom of the problem I described below.
>>>>
>>>> thanks, Sergey
>>>>
>>>> ----- Original Message ----- From: "Sergey Beryozkin" <
>>>> sberyozk@progress.com>
>>>> To: <dev@cxf.apache.org>
>>>> Sent: Wednesday, June 17, 2009 1:19 PM
>>>> Subject: JAXRS : issues with AegisProvider
>>>>
>>>>
>>>>
>>>> Hi,
>>>>
>>>> I'm seeing problems with the JAXRS AegisElementProvider
>>>> producing/consuming
>>>> complex types like Maps.
>>>> I'm nearly done with making a basic end to end JAX-RS demo working n
>>>> DOSGi,
>>>> the immediate problem is that
>>>> a client proxy fails to consume the following somewhat complicated
>>>> Aegis-produced response (Map<String, String>) :
>>>>
>>>> <ns1:anyType2anyTypeMap
>>>> xmlns:ns1="urn:org.apache.cxf.aegis.types"><ns1:entry><ns1:key
>>>> xmlns:ns2="
>>>> http://rest.greeter.samples.dosgi.cxf.apache.org" xmlns:ns3="
>>>> http://www.w3.org/2001/XMLSchema-instance"
>>>>
>>>> ns3:type="ns2:GreetingPhrase"><ns2:phrase>Bonjour</ns2:phrase></ns1:key><ns1:value
>>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="
>>>> http://www.w3.org/2001/XMLSchema-instance"
>>>> ns2:type="xsd:string">Fred</ns1:value></ns1:entry><ns1:entry><ns1:key
>>>> xmlns:ns2="http://rest.greeter.samples.dosgi.cxf.apache.org"
>>>> xmlns:ns3="
>>>> http://www.w3.org/2001/XMLSchema-instance"
>>>>
>>>> ns3:type="ns2:GreetingPhrase"><ns2:phrase>Hoi</ns2:phrase></ns1:key><ns1:value
>>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="
>>>> http://www.w3.org/2001/XMLSchema-instance"
>>>> ns2:type="xsd:string">Fred</ns1:value></ns1:entry><ns1:entry><ns1:key
>>>> xmlns:ns2="http://rest.greeter.samples.dosgi.cxf.apache.org"
>>>> xmlns:ns3="
>>>> http://www.w3.org/2001/XMLSchema-instance"
>>>>
>>>> ns3:type="ns2:GreetingPhrase"><ns2:phrase>Hola</ns2:phrase></ns1:key><ns1:value
>>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="
>>>> http://www.w3.org/2001/XMLSchema-instance"
>>>> ns2:type="xsd:string">Fred</ns1:value></ns1:entry><ns1:entry><ns1:key
>>>> xmlns:ns2="http://rest.greeter.samples.dosgi.cxf.apache.org"
>>>> xmlns:ns3="
>>>> http://www.w3.org/2001/XMLSchema-instance"
>>>>
>>>> ns3:type="ns2:GreetingPhrase"><ns2:phrase>Hello</ns2:phrase></ns1:key><ns1:value
>>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="
>>>> http://www.w3.org/2001/XMLSchema-instance"
>>>>
>>>> ns2:type="xsd:string">Fred</ns1:value></ns1:entry></ns1:anyType2anyTypeMap>
>>>>
>>>> it complains no type mapping is found
>>>>
>>>> I've run a simple frontend based demo and the same Map is serialized as
>>>>
>>>> <ns1:greetMeResponse xmlns:ns1="
>>>> http://greeter.samples.dosgi.cxf.apache.org/
>>>> "><ns1:return><ns1:entry><ns1:key><ns2:phrase
>>>> xmlns:ns2="http://greeter.samples.dosgi.cxf.apache.org
>>>> ">Bonjour</ns2:phrase></ns1:key><ns1:value>Fred</ns1:value></ns1:entry><ns1:entry><ns1:key><ns2:phrase
>>>> xmlns:ns2="http://greeter.samples.dosgi.cxf.apache.org
>>>> ">Hoi</ns2:phrase></ns1:key><ns1:value>Fred</ns1:value></ns1:entry><ns1:entry><ns1:key><ns2:phrase
>>>> xmlns:ns2="http://greeter.samples.dosgi.cxf.apache.org
>>>> ">Hola</ns2:phrase></ns1:key><ns1:value>Fred</ns1:value></ns1:entry><ns1:entry><ns1:key><ns2:phrase
>>>> xmlns:ns2="http://greeter.samples.dosgi.cxf.apache.org
>>>>
>>>> ">Hello</ns2:phrase></ns1:key><ns1:value>Fred</ns1:value></ns1:entry></ns1:return></ns1:greetMeResponse>
>>>>
>>>> So is it possible to simplify the serialization somehow when Aegis is
>>>> used
>>>> by JAXRS ? If not then how can I make the above map being deserialized
>>>> on
>>>> the client side ? Benson, do you reckon it is even possible for Map ?
>>>>
>>>> thanks, Sergey
>>>>
>>>>
>>>>
>>>
>>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message