Google app engine GWT/appEngine RPC序列化
直到上周,我一直在运行我的GWT/AppEngine应用程序,在使用java.io.Serializable时没有问题,并在RPC调用中对我的类实现Serializable 现在我在appengine上发现了这个错误:类型“com.foobar.web.shared.RPCDTOclass”不能分配给“com.google.gwt.user.client.rpc.IsSerializable”,并且没有自定义字段序列化程序 我仍然可以序列化这些工具。如果我修复/更改该类并使其com.google.gwt.user.client.rpc.IsSerializable,则它适用于该类,但对于rpc中使用的其他类,我会得到相同的错误。我只有一些字符串,所以不是我有不能序列化的类型 我没有看到任何其他人有这个问题,所以我一定是做了某种改变导致了它,但我不知道是什么。这个错误出现在AppEngine上,所以我认为这一定是AppEngine的问题 谢谢 添加一个示例Google app engine GWT/appEngine RPC序列化,google-app-engine,gwt,Google App Engine,Gwt,直到上周,我一直在运行我的GWT/AppEngine应用程序,在使用java.io.Serializable时没有问题,并在RPC调用中对我的类实现Serializable 现在我在appengine上发现了这个错误:类型“com.foobar.web.shared.RPCDTOclass”不能分配给“com.google.gwt.user.client.rpc.IsSerializable”,并且没有自定义字段序列化程序 我仍然可以序列化这些工具。如果我修复/更改该类并使其com.google
public class UserLogInDTO implements IsSerializable {
private String Email;
private String PasswordHash;
public UserLogInDTO(){}
public UserLogInDTO(String email, String passwordhash){
setEmail(email);
setPasswordHash(passwordhash);
}
public void Set(String email, String passwordhash){
this.setEmail(email);
this.setPasswordHash(passwordhash);
}
/**
* @return the email
*/
public String getEmail() {
return Email;
}
/**
* @param email the email to set
*/
public void setEmail(String email) {
Email = email.toLowerCase();
}
/**
* @return the passwordHash
*/
public String getPasswordHash() {
return PasswordHash;
}
/**
* @param passwordHash the passwordHash to set
*/
public void setPasswordHash(String passwordHash) {
PasswordHash = passwordHash;
}
}
如果我的实现是可序列化的,那么它可以工作;如果实现是可序列化的,那么它过去可以工作,但现在不行。我正在使用1.7.2 SDK for AppEngine 2.4.0 for GWTRPC序列化策略是否正确部署?您是否已正确设置缓存,以确保您正在运行应用程序的最新版本。正确部署RPC序列化策略是什么意思?我只是仔细检查了一下,这个应用只有一个版本。我还部署了最新版本的应用程序,以确保它符合预期。您是否升级到新的应用程序引擎SDK?也许你可以发布一个类的例子,你会发现这个错误。@Michael:我是说gwt编译生成的
*.gwt.rpc
文件。我说的最新版本是指你的浏览器从服务器上正确加载应用程序,而不是从缓存中使用以前的版本。看见