GWT 2.5 compilation error

When the client-side code changes, we can refresh the page to recompile and see the results. It did a great job with GWT 2.4

There is a problem with GWT 2.5. Thrown out when the page is refreshed com.google.gwt.user.client.rpc.SerializationException

. If I restart the web app and refresh the page everything is fine. So it looks like a bug in GWT.

A few details:

  • This exception is thrown if anything changes, such as a css file (!)
  • This exception often occurs, but not always, sometimes it is normal.
  • The de facto exemption can apply to almost any class. In this example, it is java.lang.Integer.

com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException: Response cannot be deserialized to com.google.gwt.user.client.rpc.impl.RequestCallbackAdapter.onResponseReceived (RequestCallbackAdapter.java:221.g .http.client.Request.fireOnResponseReceived (Request.java:287) at com.google.gwt.http.client.RequestBuilder $ 1.onReadyStateChange (RequestBuilder.java:395) at sun.reflect.NativeMetinhodAccessorimplative method sun.reflect.NativeMethodAccessorImpl.invoke (Unknown source) at sun.reflect.DelegatingMethodAccessorImpl.invoke (Unknown source) at java.lang.reflect.Method.invoke (Unknown source) at com.google.gwt.dev.shell.MethodAdhodAdd 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:172) at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn (BrowserChannelServer.java:338) at com.google.gwt.dev.shell.BrowserChannelJavaServer at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke (ModuleSpaceOOPHM.java:136) at com.google.gwt.dev.shell.ModuleSpace.invokeNative (ModuleSpace.java:571) at com.google.gwt.dev .shell.ModuleSpace.invokeNativeObject (ModuleSpace.java:279) 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.entry0 (Impl.java:242) at sun.reflect.NativeMethodAccessorImpl.invoke0 (native method) at sun.reflect.NativeMethodAccessorImpl.invoke (Unknown source) in sun.reflect.DelegatingMethodAccessorImpl.invoke (Unknown source) at java.lang.reflect.Method.invoke (Unknown source) 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:172) at com.google.gwt.dev.shell.BrowserChannelServer.reactToMess .java: 293) at com.google.gwt.dev.shell.BrowserChannelServer.processConnection (BrowserChannelServer.java:547) at com.google.gwt.dev.shell.BrowserChannelServer.run (BrowserChannelServer.java:364) at java. lang.Thread.run (Unknown source) Cause: com.google.gwt.user.client.rpc.SerializationException: java.lang.RuntimeException: Unable to find class com.google.gwt.user.client.rpc.core.java. lang.Integer_FieldSerializer at com.google.gwt.user.client.rpc.impl.SerializerBase.getTypeHandler (SerializerBase.java:164) at com.google.gwt.user.client.rpc.impl.SerializerBase.instantiate (SerializerBase.java ) at com.google.gwt.user.client.rpc.impl.ClientSerializationStreamReader.deserialize (ClientSerializationStreamReader.java:396) at com.google.gwt.user.client.rpc.impl.AbstractSerialization.StreamReader.readObject (AbstractSerializationStreamReader.readObject (AbstractSerializationStreamReader.readObject ) at ru.minogin.data.shared.model.BaseEntity_FieldSerializer.deserialize (BaseEntity_FieldSerializer.java:29) at ru.minogin.data.shared.model.OrderedEntity_FieldSerializer.deserialize (OrderedEntity_FieldSerializer) .deserialize (OrderedEntity_FieldSerializer). model.Format_FieldSerializer.deserialize (Format_FieldSerializer.java:133) in ru.pickbook.shared.model.Format_FieldSerializer.deserial (Format_FieldSerializer.java:163) 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:398) at com.google.gwt.user.client.rpc.impl.AbstractSerializationStreamReader.readObject (AbstractSerializationStreamReader.java:119) at ru.pickbook.shared.model.Album_Fieldserializer 105) at ru.pickbook.shared.model.Album_FieldSerializer.deserial (Album_FieldSerializer.java:141) 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:398) at com.google.gwt.user.client.rpc.impl.AbstractSerializationStreamReader.readObject (AbstractSerializationStreamReader.Java: 119) at com.pickbook.shared.model.OrderItem_FieldSerializer.deserialize (OrderItem_FieldSerializer.java:48) at ru.pickbook.shared.model.OrderItem_Fava. .google.gwt.user.client.rpc.impl.SerializerBase.deserialize (SerializerBase.java:95) at com.google.gwt.user.client.rpc.impl.ClientSerializationStreamReader.deserialize (ClientSerializationStreamReader at com.java:398) .google.gwt.user.client.rpc.impl.AbstractSerializationStreamReader.readObject (AbstractSerializationStreamReader.java:119) at com.google.gwt.user.client.rpc.core.java.util.Collection_CustomFieldSerializerBase.deavarializer 34) at com.google.gwt.user.client.rpc.core.java.util.HashSet_CustomFieldSerializer.deserialize (HashSet_CustomFieldSerializer.java:34) at com.google.gwt.user.client.rpc.core.java.util.HashSet_FieldSerializer.deserial (HashSet_FieldSerializer.deserial (HashSet_FieldSerializer.deserial). rpc.impl.SerializerBase.deserialize (SerializerBase.java:95) at com.google.gwt.user.client.rpc.impl.ClientSerializationStreamReader.deserialize (ClientSerializationStreamReader.java:398) at com.google.gwt.user.client rpc.impl.AbstractSerializationStreamReader.readObject (AbstractSerializationStreamReader.java:119) at ru.pickbook.shared.model.Order_FieldSerializer.deserialize (Order_FieldSerializer.java:152) at ru.pickbook.shared.Favadelserialize 196) 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:398) at com.google.gwt.user.client.rpc.impl.AbstractSerializationStreamReader.readObject (AbstractSerializationStreamReader.java:119) at com.google.cent.gr impl.RequestCallbackAdapter $ ResponseReader $ 8.read (RequestCallbackAdapter.java:106) at com.google.gwt.user.client.rpc.impl.RequestCallbackAdapter.onResponseReceived (RequestCallbackAdapter.java:214) ... 28 moreang Caused by: java:214 .RuntimeException: Cannot find class com.google.gwt.user.client.rpc.core.java.lang.Integer_FieldSerializer at com.google.gwt.user.client.rpc.impl.ReflectionHelper.loadClass (ReflectionHelper.java:93 ) at com.google.gwt.user.client.rpc.impl.SerializerBase.getTypeHandler (SerializerBase.java:160) ... 61 more Caused by: java.lang.ClassNotFoundException at com.google.gwt.dev.shell.CompilingClassLoader $ MultiParentClassLoader.findClass (CompilingClassLoader.java:368) at com.google.gwt.dev.shell.CompilingClassLoader $ MultiParentClassLoader.loadClass (CompilingClassLoader.javao:388) in javaLassLoader. loadClass (Unknown source) at java.lang.Class.forName0 (Native method) at java.lang.Class.forName (Unknown source) at com.google.gwt.user.client.rpc.impl.ReflectionHelper.loadClass (ReflectionHelper. java: 91) ... 62 moregoogle.gwt.user.client.rpc.impl.ReflectionHelper.loadClass (ReflectionHelper.java:91) ... 62 moregoogle.gwt.user.client.rpc.impl.ReflectionHelper.loadClass (ReflectionHelper.java:91) ... 62 more

+3


source to share


2 answers


-Dgwt.disableGeneratorResultCaching

      



+4


source


The bug is not in the GWT structure, but in the browser plugins. This should not happen in production mode.



If possible, switch to SuperDev mode, you will get rid of exceptions.

0


source







All Articles