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" <sbery...@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