JSON is not a *Java* format.  It is a JavaScript Object Notation.

On 9/4/2013 4:54 PM, Mike Miller wrote:
> Thanks - will try that.   Just included the Jackson jar but that didn't make 
> it.
>
> One last question - don't mean to eat up all your time - but your statement,  
> "But you are right, Jettison produces different JSON."  How that be?  Isn't 
> JSON a spec such that there should be consistent output for a set of data?
>
> -----Original Message-----
> From: Bill Burke [mailto:bbu...@redhat.com]
> Sent: Wednesday, September 04, 2013 3:50 PM
> To: Mike Miller
> Cc: resteasy-users@lists.sourceforge.net
> Subject: Re: [Resteasy-users] Confused on handling response containing 
> collections in json
>
> Just don't include the jettison module and include all the jackson stuff.  
> Should work.
>
> On 9/4/2013 4:19 PM, Mike Miller wrote:
>> Sorry - we are JBoss 4.2.3.GA (still) with RestEasy 2.3.5.
>>
>> -----Original Message-----
>> From: Bill Burke [mailto:bbu...@redhat.com]
>> Sent: Wednesday, September 04, 2013 3:06 PM
>> To: Mike Miller
>> Cc: resteasy-users@lists.sourceforge.net
>> Subject: Re: [Resteasy-users] Confused on handling response containing
>> collections in json
>>
>> What is your server?  Tomcat? Jetty?  JBoss version?
>>
>> On 9/4/2013 4:02 PM, Mike Miller wrote:
>>> Okay, thanks - so how do I do that?  I see Chapter 21 (2.3.5) talks about 
>>> Maven but we aren't using maven.  Do  I just need to include the jar or is 
>>> there something in the web.xml that I need to add to include this 'provider?
>>>
>>> Also could someone please address my last question:
>>>
>>> "Are we using the Response object incorrectly?  What's really the 
>>> difference between returning List<Customer> vs Response with the 
>>> List<Customer> in the generic entity?"
>>>
>>> -----Original Message-----
>>> From: Bill Burke [mailto:bbu...@redhat.com]
>>> Sent: Wednesday, September 04, 2013 2:54 PM
>>> To: resteasy-users@lists.sourceforge.net
>>> Subject: Re: [Resteasy-users] Confused on handling response
>>> containing collections in json
>>>
>>> Switch to Jackson on the server side.  We will be deprecating Jettison in 
>>> the near future as it is buggy and not being well maintained.
>>> Jackson has all of what Jettison has and more...
>>>
>>> But you are right, Jettison produces different JSON.
>>>
>>> On 9/4/2013 3:27 PM, Mike Miller wrote:
>>>> We are building a restful api, using 2.3.5 (although I don't think
>>>> the release level matters) and I am a bit confused on response
>>>> handling within RestEasy:
>>>>
>>>> Right or wrong, we made most of our resource methods return
>>>> Response, using the GenericEntity when we wanted to return a collection of
>>>> objects.    Testing up to now was in Chrome Advanced Rest Client.  We
>>>> have our beans JAXB annotated and the resource 'produces' both
>>>> application/xml and application/json.  For example:
>>>>
>>>> @GET
>>>>
>>>> @Produces({"application/json", "application/xml"})
>>>>
>>>> *public*Response find(@ContextUriInfo uriInfo)
>>>>
>>>>            {
>>>>
>>>>                   setupQueryParms(uriInfo.getQueryParameters());
>>>>
>>>>                   List<Customer> custList = *null*;
>>>>
>>>> *try*{
>>>>
>>>>                          custList = listAllPaginated();
>>>>
>>>>                   } *catch*(FinderException e) {
>>>>
>>>>                          Log./getInstance/().error("FinderException
>>>> caught :", e );
>>>>
>>>>                          throwException(Response.Status./NOT_FOUND/,
>>>> "Error searching customers");
>>>>
>>>>                   }
>>>>
>>>>                   GenericEntity<List<Customer>> entity =
>>>> *new*GenericEntity<List<Customer>>(custList) {};
>>>>
>>>> *return*Response./ok/(entity).build();
>>>>
>>>>            }
>>>>
>>>> Now, as part of writing JUnit test cases, I wanted to take the
>>>> response I get back and put it back to object form so that I can then do a 
>>>> set of
>>>> asserts against the object or list of objects returned.   I downloaded
>>>> Jackson version 1.9.11 and tried to serialize/marshal the json back
>>>> to object form but keep getting the following error:
>>>>
>>>> Exception in thread "main"
>>>> _org.codehaus.jackson.map.exc.UnrecognizedPropertyException_:
>>>> Unrecognized field "Customer" (Class
>>>> com.jda.portfolio.api.rest.base.Customer), not marked as ignorable
>>>>
>>>> at [Source: C:\PPOSDevelopment\Trunk\API\REST\Server\response.json;
>>>> line: 1, column: 15] (through reference chain:
>>>> com.jda.portfolio.api.rest.base.Customer["Customer"])
>>>>
>>>> Is there a difference between Jackson json and what RestEasy produces, 
>>>> from I think Jettison?   I also took the example from User doc section 
>>>> 19.6.1 JSON and JAXB collections/arrays
>>>>
>>>>
>>>>
>>>> [{"foo":{"@test":"bill"}},{"foo":{"@test":"monica}"}}] and tried to 
>>>> marshal that back to object form - getting the same error.
>>>>
>>>>
>>>>
>>>> It seems like from Jackson, I would get something like:
>>>>
>>>> [{"@test":"bill"},{"@test":"monica}"}] for a List<Foo> - the difference 
>>>> being the {foo: } which looks like a wrapper for the object.
>>>>
>>>>
>>>>
>>>> I changed the code to return List<Customer> instead of the Response with 
>>>> GenericEntity including the List<Customer> but the json looks the same.
>>>>
>>>>
>>>>
>>>> What am I doing wrong?
>>>>
>>>>
>>>>
>>>> Are we using the Response object incorrectly?  What's really the 
>>>> difference between returning List<Customer> vs Response with the 
>>>> List<Customer> in the generic entity?
>>>>
>>>>
>>>>
>>>> I hope this is clear, but I can provide more details if needed.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> --------------------------------------------------------------------
>>>> -
>>>> -
>>>> -------- Learn the latest--Visual Studio 2012, SharePoint 2013, SQL
>>>> 2012, more!
>>>> Discover the easy way to master current and previous Microsoft
>>>> technologies and advance your career. Get an incredible 1,500+ hours
>>>> of step-by-step tutorial videos with LearnDevNow. Subscribe today and save!
>>>> http://pubads.g.doubleclick.net/gampad/clk?id=58041391&iu=/4140/ostg.
>>>> c
>>>> lktrk
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Resteasy-users mailing list
>>>> Resteasy-users@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/resteasy-users
>>>>
>>>
>>> --
>>> Bill Burke
>>> JBoss, a division of Red Hat
>>> http://bill.burkecentral.com
>>>
>>> ---------------------------------------------------------------------
>>> -
>>> -------- Learn the latest--Visual Studio 2012, SharePoint 2013, SQL
>>> 2012, more!
>>> Discover the easy way to master current and previous Microsoft technologies 
>>> and advance your career. Get an incredible 1,500+ hours of step-by-step 
>>> tutorial videos with LearnDevNow. Subscribe today and save!
>>> http://pubads.g.doubleclick.net/gampad/clk?id=58041391&iu=/4140/ostg.
>>> c lktrk _______________________________________________
>>> Resteasy-users mailing list
>>> Resteasy-users@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/resteasy-users
>>>
>>
>> --
>> Bill Burke
>> JBoss, a division of Red Hat
>> http://bill.burkecentral.com
>>
>
> --
> Bill Burke
> JBoss, a division of Red Hat
> http://bill.burkecentral.com
>

-- 
Bill Burke
JBoss, a division of Red Hat
http://bill.burkecentral.com

------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58041391&iu=/4140/ostg.clktrk
_______________________________________________
Resteasy-users mailing list
Resteasy-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/resteasy-users

Reply via email to