4
我正在尋找使用枚舉來從EJB返回代碼和消息。目前只返回一個整數值的代碼。 由於我們有多個客戶端應用程序,並且在EJB公共類和vica之間並不總是更新客戶端。如果客戶端的枚舉類型不同步會發生什麼?從EJB返回枚舉
將它的工作,如果我有一個枚舉的舊定義在客戶端,並在EJB側和正相反一個新的定義?
E.g 客戶端:
public enum Color {
WHITE(21, "White"), BLACK(22, "Black");
private int code;
private int message;
private Color(int c, String message) {
code = c;
message = m;
}
public int getCode() {
return code;
}
public String getMessage(){
return message;
}
EJB的一面:
public enum Color {
WHITE(21, "White"), BLACK(22, "Black"), RED(23, "Red");
private int code;
private int message;
private Color(int c, String message) {
code = c;
message = m;
}
public int getCode() {
return code;
}
public String getMessage(){
return message;
}
我的EJB的方法是:
public Color getBestColor();
,並返回:
Color.WHITE
非常感謝。完美的答案(與鏈接確認),並意味着我想要做的將工作正常:) – timothyja
我會注意到枚舉序列化可能適用於JRMP,但RMI-IIOP是不同的。 RMI-IIOP枚舉序列化的Sun和IBM實現都有錯誤,所以如果你使用RMI-IIOP,我會建議仔細測試。 –