今天我用EJB做了一些实验。
JavaEE 6
Websphere 8.0.x
我有一个接口定义了一些远程方法:
interface Calculator{
int add(int x, int y);
int mul(itn x, int y);
}此接口由EJB实现。
此外,我还有另一个EJB从另一个应用程序(ear)调用Calculator-EJB。因此,我总共部署了两个ear文件,一切工作正常。
现在我更改了Calculator接口,删除了mul-method,但在实现EJB类中,mul-method仍然是实现的,我只是删除了@override注释。现在,我使用实现更改后的接口的EJB重新部署了ear。
令我惊讶的是,另一个ear应用程序仍然能够调用mul-method。
这是EJB标准的一部分吗?
之后,我将计算器接口重命名为Calculator2,并重新部署了实现这个新接口的EJB。
只有旧的Calculator接口的另一个ear应用程序仍然能够调用新部署的EJB上的方法,新部署的EJB只实现了新的Calculator2接口。
同样的问题:这是EJB标准的一部分吗?
https://stackoverflow.com/questions/38251517
复制相似问题