Le 2011-05-18 à 11:00, Mike Schrag a écrit : > it's not really an issue of parsing, it's an issue of mapping that parsed > structure onto classes ... i don't know where that lives. seems easier to > just add whatever's missing into ERXRestClient, or look into adding custom > serializers/deserializers into resteasy. or even better, if you're sending > JSON, why do you even care that it's an NSArray? it should just turn into a > List on the client ...
Anything that can be done before WOWODC :-) > ms > > On May 18, 2011, at 10:36 AM, Pascal Robert wrote: > >> >> Le 2011-05-18 à 10:21, Mike Schrag a écrit : >> >>> ERXRestClient was just a proof of concept ... There's really no reason you >>> couldn't just extend the APi to always use >>> ERXKeyFilter.filterWithAllRecursive() and make a default rest delegate that >>> just makes new instances of classes for you. That said, I think RestEasy >>> and Jersey both do a better job on the client side for things like modeling >>> cookie, header, and form parameters. All would be pretty easy to put into >>> ERXRestClient, though -- we certainly have all the primitives to do it. >> >> What about using the JSON parser from ERRest to make it work with RestEasy? >> Right now, I'm using the Jackson parser and it look like we could use any >> JSON parser instead of JSON. That's something I could work on. >> >>> ms >>> >>> On May 18, 2011, at 10:05 AM, Pascal Robert wrote: >>> >>>> >>>> Le 2011-05-18 à 09:39, Henrique Prange a écrit : >>>> >>>>> Pascal, >>>>> >>>>> Just to summarize the simplicity of Jersey client. Here is a sample code >>>>> of how to do a GET on the resource identified by 10. >>>>> >>>>> Client client = Client.create(); >>>>> >>>>> WebResource resource = client.resource( "http://localhost/my-service" ); >>>>> >>>>> MyResource response = >>>>> resource.path("resource").path(10).type(MediaType.APPLICATION_JSON).get(MyResource.class); >>>> >>>> RestEasy is not too bad : >>>> >>>> public interface SimpleClient { >>>> >>>> @GET >>>> @Path("search.json") >>>> @Produces("application/json") >>>> ClientResponse<TwitterSearchResult> getSearchResults(@QueryParam("q") >>>> String hashtag, @QueryParam("result_type") String resultType); >>>> >>>> } >>>> SimpleClient client = ProxyFactory.create(SimpleClient.class, >>>> "http://search.twitter.com/"); >>>> ClientResponse<TwitterSearchResult> response = >>>> client.getSearchResults("#wowodc","recent"); >>>> if >>>> (response.getResponseStatus().getFamily().equals(Response.Status.Family.SUCCESSFUL)) >>>> { >>>> NSLog.out.appendln(response.getEntity()); >>>> } >>>> >>>> Problem is that it doesn't understand classes like NSTimestamp and >>>> NSArray. ERXRestClient understand the WO unique stuff, but you have to >>>> write delegates, use ERXKeyFilter, etc. But ERXRestClient is good if the >>>> service you call is the service you are calling are following the same >>>> structure as ERRest or RoR. >>>> >>>> BTW, the Twitter REST API is crap. >>>> >>>>> Cheers, >>>>> >>>>> Henrique >>>>> >>>>> On 18/05/2011, at 10:20, Henrique Prange wrote: >>>>> >>>>>> Hi Pascal, >>>>>> >>>>>> We have been using Jersey [1] to produce and consume REST services. We >>>>>> found Jersey the most concise and simple REST implementation. It also >>>>>> offers a good set of tools to test production and consumption of REST >>>>>> services, which is essential in our development process. >>>>>> >>>>>> [1]http://jersey.java.net/ >>>>>> >>>>>> Cheers, >>>>>> >>>>>> Henrique >>>>>> >>>>>> On 18/05/2011, at 10:05, Pascal Robert wrote: >>>>>> >>>>>>> Good morning, >>>>>>> >>>>>>> I see from the 2011 surveys that a good part of the community is >>>>>>> consuming REST services. I was wondering what are you using to consume >>>>>>> those? Right now, I'm playing with ERXRestClient and JBoss' RestEasy to >>>>>>> consume REST services, but I'm curious to see what other people use. >>>>>>> Just plain Jakarta HTTPClient with a JSON or XML parser? >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Pascal Robert >>>>>>> [email protected] >>>>>>> >>>>>>> WOWODC 2011 : July 1-2-3, Montreal. wowodc.com >>>>>>> >>>>>>> AIM/iChat : MacTICanada >>>>>>> LinkedIn : http://www.linkedin.com/in/macti >>>>>>> Twitter : pascal_robert >>>>>>> >>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Do not post admin requests to the list. They will be ignored. >>>>>>> Webobjects-dev mailing list ([email protected]) >>>>>>> Help/Unsubscribe/Update your Subscription: >>>>>>> http://lists.apple.com/mailman/options/webobjects-dev/hprange%40gmail.com >>>>>>> >>>>>>> This email sent to [email protected] >>>>>> >>>>> >>>>> _______________________________________________ >>>>> Do not post admin requests to the list. They will be ignored. >>>>> Webobjects-dev mailing list ([email protected]) >>>>> Help/Unsubscribe/Update your Subscription: >>>>> http://lists.apple.com/mailman/options/webobjects-dev/probert%40macti.ca >>>>> >>>>> This email sent to [email protected] >>>> >>>> _______________________________________________ >>>> Do not post admin requests to the list. They will be ignored. >>>> Webobjects-dev mailing list ([email protected]) >>>> Help/Unsubscribe/Update your Subscription: >>>> http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40pobox.com >>>> >>>> This email sent to [email protected] >>> >> >
_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to [email protected]
