2010-04-07 78 views
1

返回類型的超比方說,我有遠程接口:返回從遠程EJB方法

@Remote 
public interface A { 
    public Response doSomething(); 
} 

與實現

@Stateless 
public class B implements A { 
    public BeeResponse doSomething() {...} 
} 

其中:

  • BeeResponse延伸響應。
  • 響應位於EJB-API jar中,BeeResponse位於實施jar中。
  • 響應和BeeResponse有不同serialVersionUID

我的假設是,從B響應解組將失敗,我是否正確?

回答

1

那麼我測試了這個運行在OpenEJB中,它似乎表現得如我所預料的那樣,客戶端不理解來自Bean的響應,因爲BeeResponse類從客戶端系統中丟失。

它一直運行到客戶端開始反序列化響應的時間點。但是,串行版本的UID在這裏沒有任何影響,因爲客戶端甚至無法創建類。

現在所有這一切都非常有意義,但我有種「希望」會有某種魔法可以使它工作:-)

0

由於Java 5,這是允許的,所以它應該工作。我建議嘗試一下,如果出現錯誤,請回來。