Wow, It's amazing to see this forum has so much activity. I feel so
welcome in here, too bad I can't see my question on the main
discussions page. :(

Ok, based on your replies, I've now analyzed all the options you've
given me, and sincerely I now honestly gotta say that it was my own
lack of GWT knowledge which led me to believe I had to do something
more complex than necessary. I think
if I stick with Chris' suggestion I'll be just fine. Now, I still have
one more fundamental question:

If I use my own classes (POJOs), say like a Person POJO and I create
it on the .client package of my gwt application. Is that ALL I gotta
do in order to work with it between the client and the server ? I mean
sending it from the client to the RemoteServiceService Impl.

If that's not all that I should do to work with my personal classes,
could you please tell me what else is required ? I'm still confused
with the <inherits> thing. or wheter a personal class should be
defined on the client as well as in the server side. I just would like
to know.

Best Regards, and thanks everyone for the kind replies !.

Jose.

On Jun 19, 10:09 am, "Dean S. Jones" <[email protected]> wrote:
> This is not totally true, gwt-rpc is OK for most data transfers, but
> it causes a bit of overhead in deserialization. GWT's client side JSON
> library is SLOW,
> it constructs a parallel data structure of concrete types on parse,
> upfront, and by default uses eval('''), which isn't always the best or
> fastest way to go.
>
> Since your asking the JSON data-structure "isArray()", etc, most of
> the time, I find lazy evaluation to be much faster. Also, you can
> tweak your custom deserializer to use the JSON
> native parser if it is available.
>
> On Jun 18, 2:14 pm, Gal Dolber <[email protected]> wrote:
>
>
>
> > Sure, there is no doubt that the best way to go its the gwt-rpc
>
> > 2010/6/18 Chris Boertien <[email protected]>
>
> > > All good points, but I think you guys are totally missing the point.
> > > He was taking a POJO and converting it to JSON for transmission using
> > > GWT-RPC, which is completely redundant since GWT-RPC can simply send
> > > the POJO and handle all the messy bits for him.
>
> > > Simple is better...
>
> > > On Fri, Jun 18, 2010 at 9:26 AM, Gal Dolber <[email protected]> wrote:
> > > > I think the best you can do is a generator that creates an overlay for
> > > that
> > > > pojo and a utility class to convert a json string to the pojo.
> > > > The interface will look like this:
> > > > public interface Json2Pojo<POJO> {
> > > > POJO fromJson(String json);
> > > > }
> > > > And the steps will be:
>
> > > > Create an POJOOverlay from the json string
> > > > Instantiate a POJO
> > > > Call all POJO setters with POJOOverlay getter
> > > > Return the POJO
>
> > > > And the gwt compiler will inline that for you.
> > > > Best
> > > > 2010/6/18 Peter Simun <[email protected]>
>
> > > >> Hi Jose,
>
> > > >> Piriti project looks great for your needs. If you would like to
> > > >> customize deserialization process (with custom instantiators and
> > > >> deserializers) you can also use acris-json project. You can find
> > > >> details here:
> > > >>http://code.google.com/p/acris/wiki/GWTJsonizer
>
> > > >> (Project is based on JSONParser from GWT which internally use eval
> > > >> function)
>
> > > >> Only with using annotations you can get powerfull piece of
> > > >> functionality in JSON parsing mechanism. For example this project was
> > > >> used for deserialize JSON reponses from Google Youtube API in gwt-
> > > >> youtube-api.googlecode.com project.
>
> > > >> Peter
>
> > > >> On 18. Jún, 16:14 h., Harald Pehl <[email protected]> wrote:
> > > >> > Hi Jose,
>
> > > >> > you could take a look at Piriti:http://code.google.com/p/piriti/.
> > > >> > It's an XML / JSON mapper for GWT which maps JSON data from the 
> > > >> > server
> > > >> > to POJO on the client.
>
> > > >> > - Harald
>
> > > >> > P.S. At the moment Piriti uses the "eval" function to parse JSON. 
> > > >> > This
> > > >> > will be changed in the next release, so that the internal JSON parser
> > > >> > is used.
>
> > > >> > On 18 Jun., 15:34, Chris Boertien <[email protected]> wrote:
>
> > > >> > > Shouldn't have a problem sending a HashMap back and forth. As far 
> > > >> > > as
> > > i
> > > >> > > can tell GWT has a fairly complete implementation of the Java
> > > >> > > Collections API, and all of which are Serializable, so there
> > > shouldn't
> > > >> > > be any issues. I haven't used it for much more than Lists so there
> > > >> > > might be quirks I haven't come across yet.
>
> > > >> > > 2010/6/18 Jose Luis Estrella Campaña <[email protected]>:
>
> > > >> > > > Hello There !
>
> > > >> > > > I believe what Chris says is totally right, I should just use a
> > > >> > > > regular Java Object, I was mistaken when I thought I had to do
> > > JSON
> > > >> > > > parsing on the server side.
> > > >> > > > Now, I would like to know if a HashMap containing Strings only is
> > > >> > > > serializable ? Could I send it from the client to the Server and
> > > >> > > > Back
> > > >> > > > (specially back)?
>
> > > >> > > > Thank you very much in advance !
>
> > > >> > > > Jose.
>
> > > >> > > > On Jun 17, 10:59 pm, Jan Ehrhardt <[email protected]>
> > > >> > > > wrote:
> > > >> > > >> The GWT docs are offering you to use the JavaScript "eval"
> > > function
> > > >> > > >> directly
> > > >> > > >> or through the JSONParser class, which internally uses the 
> > > >> > > >> "eval"
> > > >> > > >> function.
> > > >> > > >> A more secure way, that is to use the JSON
> > > >> > > >> libraryhttp://www.json.org/js.html. You'll place the additional
> > > JavaScript
> > > >> > > >> library
> > > >> > > >> in your host page, as any other JavaScript too. Than take the
> > > code
> > > >> > > >> from the
> > > >> > > >> GWT docs:
>
> > > >> > > >> private final native JsArray<StockData> 
> > > >> > > >> asArrayOfStockData(String
> > > >> > > >> json) /*-{
> > > >> > > >>   return *eval(json);*
>
> > > >> > > >> }-*/;
>
> > > >> > > >> and modify it like this:
>
> > > >> > > >> private final native JsArray<StockData> 
> > > >> > > >> asArrayOfStockData(String
> > > >> > > >> json) /*-{
> > > >> > > >>   return *$wnd.JSON.parse(json);*
>
> > > >> > > >> }-*/;
>
> > > >> > > >> This is more secure than using the "eval" function. Additionally
> > > >> > > >> the
> > > >> > > >> "JSON.parse()" function has become part of the JavaScript
> > > standard
> > > >> > > >> and is
> > > >> > > >> implemented natively in many modern browsers. The above library
> > > >> > > >> knows this
> > > >> > > >> and delegates the secure JSON parsing to the fast native parser
> > > >> > > >> provided by
> > > >> > > >> the browser.
>
> > > >> > > >> Regards
> > > >> > > >> Jan Ehrhardt
>
> > > >> > > >> 2010/6/18 Chris Boertien <[email protected]>
>
> > > >> > > >> > Is there a particular reason that you _need_ the JSON string?
> > > If
> > > >> > > >> > your
> > > >> > > >> > using GWT RPC then you can simply send a Java Object to the
> > > >> > > >> > server and
> > > >> > > >> > the underlying GWT will handle the serialization for you.
>
> > > >> > > >> > If you the JSON string is coming from somewhere else and you
> > > >> > > >> > really
> > > >> > > >> > have no choice, then it may be worthwhile to put together a 
> > > >> > > >> > JSO
> > > >> > > >> > Overlay, use the Overlay to instantiate a POJO on the client
> > > side
> > > >> > > >> > code, and send the POJO to the server via GWT RPC.
>
> > > >> > > >> > Since your new some of that probably makes no sense, and If 
> > > >> > > >> > you
> > > >> > > >> > can
> > > >> > > >> > give a little more detail as to why you need to have JSON
> > > >> > > >> > originating
> > > >> > > >> > from the client I'm sure this can be explained a bit better to
> > > >> > > >> > fit
> > > >> > > >> > your case.
>
> > > >> > > >> > GWT-RPC:
> > >http://code.google.com/webtoolkit/doc/latest/tutorial/RPC.html
> > > >> > > >> > GWT-JSON:
>
> > >http://code.google.com/webtoolkit/doc/latest/tutorial/JSON.html#client
>
> > > >> > > >> > 2010/6/16 Jose Luis Estrella Campaña <[email protected]>:
> > > >> > > >> > > Hello Folks !
>
> > > >> > > >> > > I'm glad to say that I'm a brand new user of GWT, a very
> > > happy
> > > >> > > >> > > one by
> > > >> > > >> > > the way. However, as any newcomer I have questions, One in
> > > >> > > >> > > particular.
> > > >> > > >> > > Here it goes:
>
> > > >> > > >> > > What's the easiest, most straight forward way to deserialize
> > > a
> > > >> > > >> > > JSON
> > > >> > > >> > > String on the Server side and instance a Java Object from it
> > > ?
>
> > > >> > > >> > > The JSON String will be sent from the client side, an
> > > >> > > >> > > implementation
> > > >> > > >> > > of the RemoteService for example, and I intend to 
> > > >> > > >> > > deserialize
> > > >> > > >> > > it on
> > > >> > > >> > > the Server side, say inside the RemoteServiceServlet
> > > >> > > >> > > Implementation,
> > > >> > > >> > > so I can instance a Java Object with the information
> > > contained
> > > >> > > >> > > in the
> > > >> > > >> > > JSON string afterwards. Is there a way this last step
> > > >> > > >> > > automatically
> > > >> > > >> > > with some GWT API ?
>
> > > >> > > >> > > I would like to see some examples if it's possible.
>
> > > >> > > >> > > Best Regards,
>
> > > >> > > >> > > Sincerely,
>
> > > >> > > >> > > Jose.
>
> > > >> > > >> > > --
> > > >> > > >> > > You received this message because you are subscribed to the
> > > >> > > >> > > Google Groups
> > > >> > > >> > "Google Web Toolkit" group.
> > > >> > > >> > > To post to this group, send email to
> > > >> > > >> > > [email protected]
> > > >> > > >> > .
> > > >> > > >> > > To unsubscribe from this group, send email to
>
> > > >> > > >> > [email protected]<google-web-toolkit%2Bunsubs
> > > >> > > >> >  [email protected]>
> > > <google-web-toolkit%2Bunsubs
> > > >> > > >> > [email protected]>
> > > >> > > >> > .
> > > >> > > >> > > For more options, visit this group at
> > > >> > > >> >http://groups.google.com/group/google-web-toolkit?hl=en.
>
> > > >> > > >> > --
> > > >> > > >> > You received this message because you are subscribed to the
> > > >> > > >> > Google Groups
> > > >> > > >> > "Google Web Toolkit" group.
> > > >> > > >> > To post to this group, send email to
> > > >> > > >> > [email protected].
> > > >> > > >> > To unsubscribe from this group, send email to
>
> > > >> > > >> > [email protected]<google-web-toolkit%2Bunsubs
> > > >> > > >> >  [email protected]>
> > > <google-web-toolkit%2Bunsubs
> > > >> > > >> > [email protected]>
> > > >> > > >> > .
> > > >> > > >> > For more options, visit this group at
> > > >> > > >> >http://groups.google.com/group/google-web-toolkit?hl=en.
>
> > > >> > > > --
> > > >> > > > You received this message because you are subscribed to the 
> > > >> > > > Google
> > > >> > > > Groups "Google Web Toolkit" group.
> > > >> > > > To post to this group, send email to
> > > >> > > > [email protected].
> > > >> > > > To unsubscribe from this group, send email to
> > > >> > > > [email protected]<google-web-toolkit%2Bunsubs
> > > >> > > >  [email protected]>
> > > .
> > > >> > > > For more options, visit this group
>
> ...
>
> read more »

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to