RPC Error after 2.3 upgrade: The response could not be deserialized

1,963 views
Skip to first unread message

KevMo

unread,
May 5, 2011, 3:46:48 PM5/5/11
to Google Web Toolkit
After upgrading to GWT 2.3 some of my RPC services no longer work and
fail with "The response could not be deserialized". It seems to
happen to services that are returning objects that are use Date
objects that are annotated with @Temporal(TemporalType.TIMESTAMP). I
use Gilead 1.3.1 and Hibernate 3.6 and I had no issues with GWT 2.2.

Any idea what could be going on, or how to start debugging?

Here's the stack trace:
com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException: The
response could not be deserialized
at
com.google.gwt.user.client.rpc.impl.RequestCallbackAdapter.onResponseReceived(RequestCallbackAdapter.java:
221)
at
com.google.gwt.http.client.Request.fireOnResponseReceived(Request.java:
287)
at com.google.gwt.http.client.RequestBuilder
$1.onReadyStateChange(RequestBuilder.java:395)
at sun.reflect.GeneratedMethodAccessor33.invoke(Unknown
Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
at
com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
at
com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:
167)
at
com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:
326)
at
com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:
207)
at
com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:
132)
at
com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:
561)
at
com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:
269)
at
com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:
91)
at com.google.gwt.core.client.impl.Impl.apply(Impl.java)
at com.google.gwt.core.client.impl.Impl.apply(Impl.java)
at com.google.gwt.core.client.impl.Impl.entry0(Impl.java:214)
at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown
Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
at
com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
at
com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:
167)
at
com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:
281)
at
com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:
531)
at
com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:
352)
at java.lang.Thread.run(Thread.java:680)
Caused by: com.google.gwt.user.client.rpc.SerializationException:
java.sql.Timestamp/1769758459
Caused by: com.google.gwt.user.client.rpc.SerializationException:
java.sql.Timestamp/1769758459
at
com.google.gwt.user.client.rpc.impl.SerializerBase.getTypeHandler(SerializerBase.java:
153)
at
com.google.gwt.user.client.rpc.impl.SerializerBase.instantiate(SerializerBase.java:
114)
at
com.google.gwt.user.client.rpc.impl.ClientSerializationStreamReader.deserialize(ClientSerializationStreamReader.java:
111)
at
com.google.gwt.user.client.rpc.impl.AbstractSerializationStreamReader.readObject(AbstractSerializationStreamReader.java:
119)
at
com.lensoo.shared.entity.Course_FieldSerializer.deserialize(Course_FieldSerializer.java:
320)
at
com.lensoo.shared.entity.Course_FieldSerializer.deserial(Course_FieldSerializer.java:
405)
at
com.google.gwt.user.client.rpc.impl.SerializerBase.deserialize(SerializerBase.java:
95)
at
com.google.gwt.user.client.rpc.impl.ClientSerializationStreamReader.deserialize(ClientSerializationStreamReader.java:
113)
at
com.google.gwt.user.client.rpc.impl.AbstractSerializationStreamReader.readObject(AbstractSerializationStreamReader.java:
119)
at com.google.gwt.user.client.rpc.impl.RequestCallbackAdapter
$ResponseReader$8.read(RequestCallbackAdapter.java:106)
at
com.google.gwt.user.client.rpc.impl.RequestCallbackAdapter.onResponseReceived(RequestCallbackAdapter.java:
214)
... 26 more
... 26 more

Juan Pablo Gardella

unread,
May 5, 2011, 3:48:08 PM5/5/11
to google-we...@googlegroups.com
http://groups.google.com/group/google-web-toolkit/browse_thread/thread/6bd717b92ae4a708

2011/5/5 KevMo <kevin...@gmail.com>

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


Andrei Bulanau

unread,
May 5, 2011, 3:59:32 PM5/5/11
to google-we...@googlegroups.com
May be you have old version gwt-servlet.jar in your project.

KevMo

unread,
May 5, 2011, 4:47:27 PM5/5/11
to Google Web Toolkit
Thanks for the suggestion. I've replaced all the GWT jars just to be
double sure. I still have the same problem though.

Juan Pablo Gardella

unread,
May 5, 2011, 8:29:40 PM5/5/11
to google-we...@googlegroups.com
Can you paste to your .classpath file ?

2011/5/5 KevMo <kevin...@gmail.com>

KevMo

unread,
May 6, 2011, 11:59:51 AM5/6/11
to Google Web Toolkit
I'm using Netbeans (I know, everyone thinks I'm crazy), and as far as
I know there's no actual .classpath file, however these are the GWT
related jars I have included in the classpath:

gwt-dev.jar
gwt-servlet.jar
gwt-servlet-deps.jar
gwt-user.jar
validation-api-1.0.0.GA.jar
validation-api-1.0.0.GA-sources.jar


On May 5, 5:29 pm, Juan Pablo Gardella <gardellajuanpa...@gmail.com>
wrote:
> Can you paste to your .classpath file ?
>
> 2011/5/5 KevMo <kevinps...@gmail.com>

VKMS

unread,
May 6, 2011, 3:48:03 PM5/6/11
to google-we...@googlegroups.com
I have the exact configuration - Gilead + Hibernate, and also get Timestamp exception...

I switched back to GWT 2.2.0 - and just doing that fixed the problem.

But updrading back to GWT 2.3 restores the issue.


VKMS

unread,
May 6, 2011, 5:51:09 PM5/6/11
to google-we...@googlegroups.com

Here's something related that I found at Gilead's website:

"Timestamp_FieldSerializer that ships with Gilead conflicts with one that was apparently introduced in GWT 2.2 or 2.3"

http://sourceforge.net/tracker/index.php?func=detail&aid=3285026&group_id=239931&atid=1111398

End of "Details" section suggests the fix, however, I haven't tried that yet.

What clean solution could be suggested for the situation?

Gilead is being recommended at GWT's page, so, obviously, it would be nice to have no such conflicts between these frameworks.

KevMo

unread,
May 6, 2011, 5:56:57 PM5/6/11
to Google Web Toolkit
I asked the same question on StackOverflow (http://stackoverflow.com/
questions/5914189/rpc-error-after-gwt-2-3-upgrade) and apparently it's
an issue with gilead not being compatible with 2.3. A bug has already
been filed, with a fix. I haven't attempted it yet, but I'll report
back once I do.

http://sourceforge.net/tracker/index.php?func=detail&aid=3285026&group_id=239931&atid=1111398

VKMS

unread,
May 6, 2011, 6:19:08 PM5/6/11
to google-we...@googlegroups.com
At stackoverflow - that's my answer... :)

I tried the fix described at the link above:
in gilead4gwt*.jar I removed *.class files from the following package: com.google.gwt.user.client.rpc.core.java.sql

That fixed the issue I have, but not sure this doesn't introduce other things... 

This fix definitely needs to be negotiated between Gilead and GWT developers to discuss the best approach.

KevMo

unread,
May 6, 2011, 6:53:10 PM5/6/11
to Google Web Toolkit
Well thank's for your helpful answer :)

Removing com.google.gwt.user.client.rpc.core.java.sql from gilead4gwt
worked for me too.

Should I post the custom .jar somewhere and put a link to it in the
gilead support forum?

VKMS

unread,
May 6, 2011, 5:45:28 PM5/6/11
to Google Web Toolkit
Here's something that I found at Gilead's website, posted by someone
who experienced the problem also already: "Timestamp_FieldSerializer
that ships with Gilead conflicts with one that was apparently
introduced in GWT 2.2 or 2.3"

http://sourceforge.net/tracker/index.php?func=detail&aid=3285026&group_id=239931&atid=1111398

End of "Details" section suggests some fix, however, I haven't tried
that yet.

What clean solution could be proposed for such a situation? Gilead is
recommended as a solution at GWT's page, so, obviously, conflicts like
this one between frameworks should be avoided.

On May 5, 5:29 pm, Juan Pablo Gardella <gardellajuanpa...@gmail.com>
wrote:

VKMS

unread,
May 6, 2011, 1:47:44 PM5/6/11
to Google Web Toolkit
I have very similar software configuration - Gilead 1.3.1, Hibernate,
and the exception also is about the timestamp:

Here's what I can retrieve from the client side debugger:

"The response could not be deserialized,"
IncompatibleRemoteServiceException
cause: SerializationException
detailMessage: java.sql.Timestamp/1769758459

I develop mostly against IE and FF and get this exception in both
browsers

harshyadav

unread,
Jun 26, 2011, 11:40:46 PM6/26/11
to Google Web Toolkit
It worked for me by placing the gilead jar above GWT libraries in
class-path entries (Order and Export in Eclipse).
Reply all
Reply to author
Forward
0 new messages