EJB 3可以实现2个远程接口吗?

时间:2011-08-03 13:10:54

标签: java java-ee ejb ejb-3.0 ejb-3.1

我有2个远程接口,比如Example.javaRealExample.java。我的bean Bean.java正在实现这两个远程接口。

根据EJB 3.0规范,我们可以在一个bean中实现2个远程接口。我的第一个界面位于a.jar,另一个界面位于b.jar

如何确保在aclient.jarbClient.jar中生成相应的存根。我不希望我的存根在单个罐子里。

2 个答案:

答案 0 :(得分:3)

是的,EJB 3可以实现两个远程接口。如何生成存根以及存放存根的JAR超出了EJB规范的范围:它是特定于供应商的。

我可以说WebSphere Application Server createEJBStubs工具将在与接口本身相同的JAR中生成存根。

答案 1 :(得分:3)

由于在JDK和dynamic RMI-IIOP(2006)中添加了动态代理,现代应用程序服务器不需要手动生成存根的古老概念(更不用说更老的概念了)骨架)。

E.g。对于至少JBoss AS 4.x +,Glassfish和部分WebSphere 7,您需要在客户端jar中包含接口。不需要任何其他东西。 (不幸的是,由于某些未知的原因,WebSphere只部分地实现了这个相对简单的功能,所以如果您使用的是WebSphere并拥有Java SE客户端,我会感到很痛苦)

顺便说一下,还要注意,从远程服务器检索的代理可以直接转换为接口。 古老概念)或类似的东西是不需要的。