我正在调用这种远程方法:
RespuestaError<Co> cox(String a, String b, String c, int d) throws RemoteException;
我收到此错误
java.rmi.UnmarshalException: error unmarshalling return; nested exception is:
java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: jtwitter.base.RespuestaError
它说RespuestaError不是Serializable,但它是:
public class RespuestaError<T extends Serializable> implements Serializable {
private static final long serialVersionUID = 8483079015565009698L;
private T returned;
private Error error;
public RespuestaError(T returned, Error error)
{
//...
}
//...
}
其中Error
是枚举。
在这种特殊情况下,T
是:
public class Co implements Serializable {
private static final long serialVersionUID = 2759254657635643074L;
private String a;
private int b;
private Us c;
public Co(String a, int b, Us c)
{
//...
}
//...
}
Us课程是:
public class Us implements Serializable {
private static final long serialVersionUID = -6725570673833522155L;
private int a;
private String b;
private String c;
private String d;
private String e;
private int f;
public Us(int a, String b, String c, String d, String e, int f)
{
//...
}
//...
}
Everithing扩展Serializable我没有看到错误。
答案 0 :(得分:0)
代码中没有错误。问题是我没有运行我正在考虑运行的代码。清理和重新编译所有文件可以解决此问题。