【问题标题】:GWT SerializationException for com.google.gwt.view.client.Rangecom.google.gwt.view.client.Range 的 GWT SerializationException
【发布时间】:2015-01-14 16:26:56
【问题描述】:

我在 Tomcat 7 服务器上间歇性地遇到此问题。大多数情况下它都有效,并且似乎与代码更改无关。例如。今天服务器重新启动,我们开始看到与过去两周完全相同的战争的问题。在 GWT 2.6 和 2.7 中观察到了这一点

com.google.gwt.user.client.rpc.SerializationException: Type 'com.google.gwt.view.client.Range' was not assignable to 'com.google.gwt.user.client.rpc.IsSerializable' and did not have a custom field serializer.For security purposes, this type will not be serialized.: instance = Range(0,20)

它有一个用于引用 RPC 的空构造函数的 javadoc:

/**
 * The range of interest for a single handler.
 */
public class Range implements Serializable {

   private int length;
   private int start;

   ...

   /**
    * Used by RPC.
    */
    Range() {
    }

【问题讨论】:

    标签: java gwt


    【解决方案1】:

    对于在 GWT 中用于服务器和客户端之间通信的类,我建议使用 IsSerializable 而不是 Serializable。

    您是否尝试过,问题是否仍然存在?

    【讨论】:

    • 这是一个 GWT 类:com.google.gwt.view.client.Range 正在考虑扩展它并使其成为 IsSerializable
    • 哦,那是GWT的内置类型。所以这根本不应该发生。我认为这发生在您的 GWT 项目编译期间。可能 WAR 文件中的某些 GWT 类在您的服务器上已损坏。您可以尝试在 Tomcat 中取消部署 WAR 存档,重新启动服务器并重新部署它。此外,Tomcat 错误日志可能会给您一些提示。
    • 客户端得到一个500,上面的sn -p是服务器日志。我应该试试GWT forum
    猜你喜欢
    • 1970-01-01
    • 2017-10-31
    • 2017-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多