2012-01-18 33 views
6

直截了当,但令人抓狂,我让我的RPC调用这个错误:在处理这个调用GWT IncompatibleRemoteServiceException

的IncompatibleRemoteServiceException被抛出。 com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException:为com.milkrun.core.dto.UserBasket

这里无效类型签名类导致了问题:

public class UserBasket implements Serializable{ 

    private static final long serialVersionUID = -6761554796753637352L; 

    public int userBasketID; 
    public String description; 
    public String userID; 

    public List<BasketItem> items; 

    public String createUserId; 
    public Timestamp createTs; 
    public String lastUpdateUserId; 
    public Timestamp lastUpdateTs; 
    public Timestamp effStartTs; 
    public Timestamp effStopTs; 

} 

而且类型BasketItem:

public class BasketItem implements Serializable { 


private static final long serialVersionUID = -17764683871112216L; 

public int basketItemID; 

public String upc; 
public String description; 
public String brandName; 

public BigDecimal price; 

public String createUserId; 
public Timestamp createTs; 
public String lastUpdateUserId; 
public Timestamp lastUpdateTs; 
public Timestamp effStartTs; 
public Timestamp effStopTs; 

} 

我不知道我要去哪里错了,我宁可不使用IsSerializable因为这些DTO的是由一个Android应用程序共享过一个项目,IsSerializable是GWT堆栈的一部分。

+3

尝试一个干净的版本 – milan 2012-01-18 10:35:22

+0

尝试并清除所有浏览器缓存等没有骰子。 – 2012-01-18 19:16:14

+0

看着这个东西告诉我这将是这finiky这些问题的一个 – 2012-01-18 20:26:18

回答

0

只是一个想法。如果您正在使用eclipse GWT插件,请检查eclipse-plugin配置(或捆绑)的GWT版本与lib文件夹中存在的jar文件。

3

我在开发模式下遇到了码头问题。在我的情况下,问题是码头没有做一个“干净的”。我在工作区/ .metadata/.plugins/org.eclipse.wst.server.core /(例如my-module.jar)手动删除了我的gwt模块的.jar

之后,服务器端的类和客户端网站都是一样的。

0

我在使用GWT 2.6.0和Java 1.8_0_5的Eclipse Luna的DevMode中遇到了同样的问题。 清理项目,重新启动Eclipse或Windows并没有帮助我,但我通过将该应用程序部署到外部Tomcat“ - 解决了”问题 - 运行良好。 当我返回到Eclipse时,该应用程序在Jetty上的DevMode中也运行良好。奇怪的。闻起来像是GWT插件中的一个bug。

0

在Eclipse中,只需Project> Clean ...为我工作。