[aerogear-dev] Aerogear.js for CRUD

Vineet Reynolds Pereira vpereira at redhat.com
Mon Dec 16 15:06:58 EST 2013



----- Original Message -----
> From: "Lucas Holmquist" <lholmqui at redhat.com>
> To: "AeroGear Developer Mailing List" <aerogear-dev at lists.jboss.org>
> Cc: "Vineet Reynolds Pereira" <vpereira at redhat.com>
> Sent: Tuesday, December 17, 2013 12:53:25 AM
> Subject: Re: [aerogear-dev] Aerogear.js for CRUD
> 
> 
> On Dec 16, 2013, at 1:52 PM, Burr Sutter <bsutter at redhat.com> wrote:
> 
> > Adding Vineet as he has spent time on the Forge REST scaffolding.
> > 
> > On Dec 16, 2013, at 7:01 AM, Sebastien Blanc <scm.blanc at gmail.com> wrote:
> > 
> >> Burr,
> >> I've added some logs statements on the client and basically it seems it
> >> can not parse the response from the server :
> >> 
> >> I/Web Console( 1386): textStatus: parsererror at
> >> file:///android_asset/www/js/index.js:103
> >> I/Web Console( 1386): error: SyntaxError: Unexpected end of input at
> >> file:///android_asset/www/js/index.js:104
> >> 
> >> If I do a CURL like this :
> >> curl -v -b cookies.txt -c cookies.txt -H "Accept: application/json" -H
> >> "Content-type: application/json" -X POST -d
> >> '{"phoneNumber":"1234567890","email":"newTest at test.com","name":"newTest"}'
> >> http://agmobile-html5.rhcloud.com/rest/forge/members
> >> 
> > I should have pointed to the sources to the REST endpoint:
> > https://github.com/burrsutter/agmobile/blob/master/src/main/java/com/burrsutter/agmobile/rest/MemberEndpoint.java
> > This was generated by Forge as I am too lazy to type up a full CRUD REST
> > endpoint myself :-)
> > 
> >> I got an correct answer but the content type is 'text/plain' , please
> >> check your rest endpoint to be sure it's producing json as output, that
> >> should solve your issue.
> > It says
> >    @POST
> >    @Consumes("application/json")
> > 
> needs a @Produces("application/json")

I'm not sure that will help. The response is a HTTP 201 with a Location header.
Is the client expecting an entity of type application/json in the response ?

If yes, then the method should look like:

   @POST
   @Consumes("application/json")
   public Response create(MemberDTO dto)
   {
      Member entity = dto.fromDTO(null, em);
      em.persist(entity);
      return Response.created(UriBuilder.fromResource(MemberEndpoint.class).path(String.valueOf(entity.getId())).build()).entity(entity).build();
   }

I've added : .entity(entity) in the above method to populate the response with the entity.

> 
> > 
> >> 
> >> Could you also paste the commands you used in Forge to scaffold the REST
> >> endpoints so that we can check there hasn't been an incompatibility
> >> introduced ?
> > I just used the Forge Wizard that is built into JBDS/Tools
> > http://screencast.com/t/QrKkCoFZMUn
> > 
> > error.status is 201
> > error.responseText is blank
> > 
> >> 
> >> 
> >> 
> >> 
> >> On Sat, Dec 14, 2013 at 6:06 PM, Burr Sutter <bsutter at redhat.com> wrote:
> >> I am having a problem with pipe.save(), likely user error :-)
> >> 
> >> For some reason, the POST is occurring, the save seems to work but the
> >> error callback is invoked, not the success method.
> >> 
> >> And I am doing all of this in the context of our tooling which has some
> >> limitations (auto-closing console/firebug lite)
> >> 
> >> http://screencast.com/t/gosd7Qnhz
> >> 
> >> REST endpoint:
> >> http://agmobile-html5.rhcloud.com/rest/forge/members
> >> Use of Forge, with the Member.java entity to offer full CRUD capabilities
> >> 
> >> Sources:
> >> https://github.com/burrsutter/AGContacts/blob/master/www/js/index.js
> >> 
> >> 
> >> _______________________________________________
> >> aerogear-dev mailing list
> >> aerogear-dev at lists.jboss.org
> >> https://lists.jboss.org/mailman/listinfo/aerogear-dev
> >> 
> >> _______________________________________________
> >> aerogear-dev mailing list
> >> aerogear-dev at lists.jboss.org
> >> https://lists.jboss.org/mailman/listinfo/aerogear-dev
> > 
> > _______________________________________________
> > aerogear-dev mailing list
> > aerogear-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/aerogear-dev
> 
> 


More information about the aerogear-dev mailing list