Sergey,

Well, Aegis is not seeing an xsi:type, and no one has given it a
mapping from the XML element name to a type. Where is the type hiding?

--benson


On Thu, Jul 23, 2009 at 12:21 PM, Sergey
Beryozkin<[email protected]> wrote:
>
> Hi,
>
> I've added AegisJsonProvider [1] and I'm actually quite thrilled about the
> possibilities it can offer, as far as the serialization of various complex
> types is concerned.
> It appears Aegis can work quite nicely with Jettison during the
> serialization, but I could not make the read test working. It seems Aegis
> requires the xsi:type information too early - jettison can certainly report
> it as I've also added a default JSONProvider (JAXB-based) test which reads
> the JSON sequence representing the list of derived types and it works well.
>
> Benson, let me know please if you can look at this issue. You may want to
> have a look at a disabled AegisJSONProvider.testReadFrom test (a similar and
> indeed more complex sequence with xsi:type works fine in
> JSONProviderTest.testReadListOfDerivedTypes). If yes then I can create JIRA
> and assign to you.
>
> Daniel - thanks for your request and please experiment with this provider -
> for now you can copy the source into your custom provider - we hope to do
> the release next week so it would be good if we could capture some errors
> there
>
> Cheers, Sergey
>
> [1]
> http://svn.apache.org/repos/asf/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/AegisJSONProvider.java
>
>
> Sergey Beryozkin wrote:
>>
>> Actually, I made it working - Aegis does not send 'writeEndDocument'...
>>
>> Will try to merge something working shortly
>> Sergey
>>
>>
>> Sergey Beryozkin wrote:
>>>
>>> Hi
>>>
>>> I tried to create AegisJSONProvider which for now just extends
>>> AegisJAXBProvider and overwrites its (newly added in my snapshot)
>>> createStreamWriter method and gives a Jettison writer back.
>>> It actually appears to work, Jettison writer is being called but nothing
>>> is available in the output stream in the end...Something confuses
>>> Jettison, not sure what. I'll need to look more into it...
>>>
>>> cheers, Sergey
>>>
>>>
>>>
>>>
>>> moradaniel wrote:
>>>>
>>>> Hello Guys,
>>>>
>>>> I am trying to serve json content from a CXF rest service using Aegis
>>>> since my domain model is heavily based on interfaces and
>>>> map/collections. I have followed this thread but have no clue on how to
>>>> configure the service to serve Json using Aegis. I have also looked up
>>>> in the samples bundled with the distribution but no example neither.
>>>> Do you have any working example?
>>>>
>>>> My current config is:
>>>>
>>>>     <jaxrs:server id="myService" address="/">
>>>>         <jaxrs:serviceBeans>
>>>>             <ref bean="serviceImpl" />
>>>>         <ref bean="personServiceImpl" />
>>>>         </jaxrs:serviceBeans>
>>>>             <!-- uncomment to use Aegis-->
>>>>             <jaxrs:providers>
>>>>                     <bean 
>>>> class="org.apache.cxf.jaxrs.provider.AegisElementProvider"
>>>> />
>>>>             <bean class="org.apache.cxf.jaxrs.provider.JSONProvider">
>>>>         </jaxrs:providers>
>>>>         <jaxrs:extensionMappings>
>>>>             <entry key="xml" value="application/xml" />
>>>>        <entry key="json" value="application/json"/>
>>>>         </jaxrs:extensionMappings>
>>>>     </jaxrs:server>
>>>>
>>>>
>>>> This obviously does not work since JSONProvider uses Jaxb and not Aegis.
>>>>
>>>> Thank u very much
>>>> Daniel
>>>>
>>>>
>>>> Sergey Beryozkin-2 wrote:
>>>>>
>>>>> I did a quick update to the system test which uses Aegis and had no
>>>>> problems getting JSON back. So let me know the Accept value please...
>>>>>
>>>>> Cheers, Sergey
>>>>>
>>>>> -----Original Message-----
>>>>> From: Sergey Beryozkin [mailto:[email protected]]
>>>>> Sent: 15 June 2009 20:52
>>>>> To: [email protected]
>>>>> Subject: RE: Aegis + JSON ---> is it supported?
>>>>>
>>>>> Hi Parin,
>>>>>
>>>>> I'm not sure what is happening at the moment.
>>>>> Can you also please post a captured HTTP Accept value ? I'll then try
>>>>> to
>>>>> do a test.
>>>>>
>>>>> Thanks, Sergey
>>>>>
>>>>> -----Original Message-----
>>>>> From: Parin [mailto:[email protected]]
>>>>> Sent: 15 June 2009 18:19
>>>>> To: [email protected]
>>>>> Subject: Re: Aegis + JSON ---> is it supported?
>>>>>
>>>>>
>>>>> Hi Sergey,
>>>>>
>>>>> Actually I am trying to serve JSON format and run into No message body
>>>>> writer found error.
>>>>>
>>>>> Thanks,
>>>>> - parin
>>>>>
>>>>> Sergey Beryozkin-2 wrote:
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I'm assuming it's an xml format which is not served, so try :
>>>>>>
>>>>>>>   �...@produces({"application/xml", "application/json"})
>>>>>>
>>>>>> this should help....
>>>>>>
>>>>>> cheers, Sergey
>>>>>>
>>>>>>>
>>>>>>> I get the following error when I try to make Aegis and JSON work in
>>>>>>> JAX-RS:
>>>>>>>
>>>>>>> Jun 14, 2009 3:07:56 PM
>>>>>>> org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor
>>>>>>> writeResponseErrorMessage
>>>>>>> WARNING: .No message body writer found for response class : Response.
>>>>>>>
>>>>>>> Note: Response is my custom class as shown below.
>>>>>>>
>>>>>>>   �...@get
>>>>>>>   �...@path("/getquery")
>>>>>>>   �...@produces({"application/json"})
>>>>>>> public Response greetQuery(@QueryParam("name") String
>>>>>>> name,@QueryParam("language") String language) { ..... }
>>>>>>>
>>>>>>> @XmlRootElement(name = "resp")
>>>>>>> public class Response {
>>>>>>> public Response(){}
>>>>>>> public String getGreeting() {
>>>>>>> return greeting;
>>>>>>> }
>>>>>>> public void setGreeting(String greeting) {
>>>>>>> this.greeting = greeting;
>>>>>>> }
>>>>>>> public Error[] getErrors() {
>>>>>>> return errors;
>>>>>>> }
>>>>>>> public void setErrors(Error[] errors) {
>>>>>>> this.errors = errors;
>>>>>>> }
>>>>>>> String greeting;
>>>>>>> Error[] errors;
>>>>>>>
>>>>>>> }
>>>>>>> I
>>>>>>> have the following config in my beans.xml
>>>>>>>
>>>>>>>       <bean id="aegisProvider"
>>>>>>> class="org.apache.cxf.jaxrs.provider.AegisElementProvider" />
>>>>>>> <jaxrs:server id="demoCXFServiceRS" address="/">
>>>>>>> <jaxrs:serviceBeans>
>>>>>>> <ref bean="demoCXF" />
>>>>>>> </jaxrs:serviceBeans>
>>>>>>> <jaxrs:providers>
>>>>>>> <ref bean="aegisProvider"/>
>>>>>>> </jaxrs:providers>
>>>>>>> </jaxrs:server>
>>>>>>>
>>>>>>> What am I missing??
>>>>>>>
>>>>>>> Thanks,
>>>>>>> - parin
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Sergey Beryozkin-2 wrote:
>>>>>>>>
>>>>>>>> Hi
>>>>>>>>
>>>>>>>> If you do JAX-RS then you can use Aegis and JSON providers in
>>>>> tandem,
>>>>>>>> Aegis will handle application/xml requests, JSON one will deal with
>>>>>>>> application/json.
>>>>>>>>
>>>>>>>> If you use Aegis as part of SOAP processing, then you can still
>>>>> annotate
>>>>>>>> the same bean with JAX-RS annotations and register a jax-rs endpoint
>>>>> on
>>>>>>>> the same port and have JSON supported.
>>>>>>>>
>>>>>>>> Cheers, Sergey
>>>>>>>>
>>>>>>>> -----Original Message-----
>>>>>>>> From: Parin [mailto:[email protected]]
>>>>>>>> Sent: 14 June 2009 20:50
>>>>>>>> To: [email protected]
>>>>>>>> Subject: Aegis + JSON ---> is it supported?
>>>>>>>>
>>>>>>>>
>>>>>>>> I just want to confirm that if Aegis is used as the data binding
>>>>> then
>>>>>>>> JSON is
>>>>>>>> not supported in CXF 2.1.x and CXF 2.2.x. I couldn't find any
>>>>>>>> documentation
>>>>>>>> stating that or otherwise and I wasn't successful in my test code as
>>>>>>>> well.
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> - parin
>>>>>>>> --
>>>>>>>> View this message in context:
>>>>>>>>
>>>>> http://www.nabble.com/Aegis-%2B-JSON----%3E-is-it-supported--tp24025149p
>>>>>>>> 24025149.html
>>>>>>>> Sent from the cxf-user mailing list archive at Nabble.com.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> View this message in context:
>>>>>>>
>>>>> http://www.nabble.com/Aegis-%2B-JSON----%3E-is-it-supported--tp24025149p
>>>>> 24026292.html
>>>>>>> Sent from the cxf-user mailing list archive at Nabble.com.
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> View this message in context:
>>>>> http://www.nabble.com/Aegis-%2B-JSON----%3E-is-it-supported--tp24025149p
>>>>> 24038926.html
>>>>> Sent from the cxf-user mailing list archive at Nabble.com.
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
> --
> View this message in context: 
> http://www.nabble.com/Aegis-%2B-JSON----%3E-is-it-supported--tp24025149p24629415.html
> Sent from the cxf-user mailing list archive at Nabble.com.
>
>

Reply via email to