Sorry for the late response. A series of user errors led to my
previous attempts to update the thread being eaten up.
The crux of the problem I was having is that the example I was
following (linked by Arthur) was written pre-gwt 1.5. It copies an
older version of the <code>processCall</code> method that ignores
serialisation policies. This resulted in the GWT code behind the
HandlerAdapter code falling back to the LegacySerializationPolicy
which meant that any user object that didn't implement IsSerializable
was rejected.
Its really very easy to fix, I simply copied the current GWT
implementation of RemoteServiceServlet, so now my <code>processCall</
code> method looks like this:
try {
//get the current handler
Object handler = handlerHolder.get();
//decode the request data into a GWT request instance
req = RPC.decodeRequest(data, handler.getClass(), this);
//do the actual invoking and get an encoded response
String retVal = RPC.invokeAndEncodeResponse(handler, req.getMethod
(),
req.getParameters(), req.getSerializationPolicy());
//return the encoded response.
return retVal;
} ....
This ensures that the StandardSerialisationPolicy is used and
everything works.
The one snag I got was that using Spring's DispatcherServlet leads to
GWT not finding the .gwt.rpc file in hosted mode testing. This was
easy to fix with maven by just copying the file into the right place.
The result is an application that is as platform agnostic as possible
and can take advantage of spring IOC.
On Jan 22, 11:37 am, tomekp <[email protected]> wrote:
> Hi guys!
> Thanks for all the answers.
>
> I just wanted to confirm that problems which I observe are indeed very
> similar to what danox and Arthur have reported.
> I'm also using spring framework and I also wanted to keep some part of
> my code GWT-agnostic (the module is a command line client, so it
> should be GWT independent).
> That's why I wanted to switch from IsSerializable to
> java.io.Serializable.
> I cannot invest to much time in investigating the Spring issues, so I
> will probably create my own
> com.google.gwt.user.client.rpc.IsSerializable marker interface and I
> will attach it to the command line client module. It's not the
> cleanest, but the quickest solution.
>
> Anyway it's good to know that Spring is the reason of the problems,
> not me doing something stupid :) Thanks again for help.
>
> Greetings
> Tomek
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---